a:6:{i:0;s:7666:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for gynecologist in sonipat</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.aspireoneconsulting.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.aspireoneconsulting.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for gynecologist in sonipat</p>
					</div>
					</div>
					</section>
									<section id="middle">
				<div class="wrap" id="bodyFormatNT">
				<div class="row1 dt columns23"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls detail_pm_15"><!--MIDDLE ROW1 COL-2 STARTS-->
				
								<div class="pt10px">
				<div class="xxxlarge fw6 dif">Opening For Gynecologist In Sonipat</div>
									<p class="mt7px fw6">Sonipat</p>
									
				<br>
				<p class="aj mt7px">Dear Doctors,<br />
<br />
wishes and Greetings from Aspireone Consulting <br />
<br />
we Introduce Ourselves as One of the Leading Placement Consultants Based in Punjab. We Provide Manpower to the Reputed Hospitals in North India Location. We have Very Good Offers for Consultant Doctors in Reputed Hospitals. We have Some Urgent Requirement for Consultant Gynecologist .<br />
<br />
details of the Vacancies are as Below:<br />
<br />
location: Sonipat (haryana) <br />
<br />
position: Consultant Gynecologist<br />
<br />
qualification: Md/dnb/ms<br />
<br />
experience: 0 to 10 Yrs<br />
<br />
package: (depends Upon the Experience)<br />
<br />
if You are Interested Kindly Forward Your Updated Cv On Given Mail Id with Your Current and Expected Ctc if Not Interested We Will Really Appreciate if U Forward this Position to Your Collegeaus Whom You Find Suitable for this Position.<br />
<br />
we Do have other Opening also for Specialty and Super Specialty Doctors in Case Any of Your Know One Looking for a Change Please Do Refer Them --</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 10 Years</td>
				</tr>			
									<tr>
					<td class="alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</td>
					</tr>
									
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Medical / Health Care / Hospitals</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">MS/Master of Surgery, DNB</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Gynecologist</span>
												<span class="bdr dib p2px10px mr5px mt2px">Gynecology</span>
											</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div class="pt20px">
				<p class="large fw6">About Company</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:aspireoneconsulting@gmail.com"> aspireoneconsulting@gmail.com </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="463884">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="907082"><input type="hidden" name="subject" value="Applied for Opening for Gynecologist in Sonipat">
					</form>
					</div>
			
									</div>
				</div>			
				
				<!--MIDDLE ROW1 COL-2 ENDS--> 
				</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic">
				<div class="mt10px">
									<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-dehradun.htm" title="Jobs in Dehradun">Dehradun</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-indore.htm" title="Jobs in Indore">Indore</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bhiwani.htm" title="Jobs in Bhiwani">Bhiwani</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-rohtas.htm" title="Jobs in Rohtas">Rohtas</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-sonipat.htm" title="Jobs in Sonipat">Sonipat</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-udham-singh-nagar.htm" title="Jobs in Udham Singh Nagar">Udham Singh Nagar</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-rohtak.htm" title="Jobs in Rohtak">Rohtak</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jhajjar.htm" title="Jobs in Jhajjar">Jhajjar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-patna.htm" title="Jobs in Patna">Patna</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-haridwar.htm" title="Jobs in Haridwar">Haridwar</a> <b class="alpha50 bn small">(1)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Functional Area</h2>
				</div>
				<div style="padding:10px 18px;" class="ic">
									<p class="mb5px "><span class="fr">(38)</span><a href="jobs-in-medical-health-care-hospitals-fid.htm" title="Medical / Health Care / Hospitals Jobs">Medical / Health Care / Hospit...</a></p>
									
				</div>
				</div>
				</div>
				
				</div>
				<!--MIDDLE ROW1 COL-1 ENDS-->
				
				<!--MIDDLE ROW1 ENDS--> 
				</div>
				<br><br>
				</div>
				</section>
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
					<script>
	$.ajax({
	  url: "https://www.placementindia.com/job_posting_view.php",
	  type: "POST",
	  dataType: 'html',
	  data: {job_view_id: 'RDBBVWFtaWpzSFJUTGlNS05ad1ZmQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:60:"Job openings for gynecologist in sonipat | Global Quick Jobs";i:2;s:247:"Opening for Gynecologist in Sonipat Jobs,Opening for Gynecologist in Sonipat Jobs in Sonipat,Opening for Gynecologist in Sonipat Vacancy in Sonipat,Opening for Gynecologist in Sonipat jobs in India,Medical / Health Care / Hospitals jobs in Sonipat";i:3;s:290:"Apply for Opening for Gynecologist in Sonipat Jobs in Sonipat India - Opening for Gynecologist in Sonipat Vacancy  in Medical / Health Care / Hospitals field with 1 to 10 years Work Experience, Key Skills are Gynecologist,Gynecology, Medical / Health Care / Hospitals jobs in Sonipat  India";i:4;s:1613:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Opening for Gynecologist in Sonipat",
		  "baseSalary": "",
		  "description": "Dear Doctors,

wishes and Greetings from Aspireone Consulting 

we Introduce Ourselves as One of the Leading Placement Consultants Based in Punjab. We Provide Manpower to the Reputed Hospitals in North India Location. We have Very Good Offers for Consultant Doctors in Reputed Hospitals. We have Some Urgent Requirement for Consultant Gynecologist .

details of the Vacancies are as Below:

location: Sonipat (haryana) 

position: Consultant Gynecologist

qualification: Md/dnb/ms

experience: 0 to 10 Yrs

package: (depends Upon the Experience)

if You are Interested Kindly Forward Your Updated Cv On Given Mail Id with Your Current and Expected Ctc if Not Interested We Will Really Appreciate if U Forward this Position to Your Collegeaus Whom You Find Suitable for this Position.

we Do have other Opening also for Specialty and Super Specialty Doctors in Case Any of Your Know One Looking for a Change Please Do Refer Them --",
		  "educationRequirements": "MS/Master of Surgery, DNB",
		  "experienceRequirements": "1 - 10 Years",
		  "industry": "Medical / Health Care / Hospitals",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Haryana",
		      "addressRegion": "Sonipat"
		    }
		  },
		 "qualifications": "MS/Master of Surgery, DNB",
		     "skills": "Gynecologist,Gynecology"
		  }
		</script>
		";i:5;N;}