a:6:{i:0;s:6054:"				<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="h1"><h1>Job openings for customer care associate in jaipur</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.elitebusinessolution.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.elitebusinessolution.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for customer care associate in jaipur</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Customer Care Associate</div>
									<p class="mt7px fw6">Jaipur</p>
									
				<br>
				<p class="aj mt7px">Hiring For International BPO<br />
<br />
- Customer Support<br />
- Technical Support<br />
- Calls,Email And Chat Process<br />
- International Explosure<br />
- Opportunity To Move Abroad<br />
- Salary: Upto 5 LPA<br />
<br />
Contact:<br />
HR Sahil</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">0 - 5 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  50 Thousand  To  3  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">ITES / BPO / KPO / LPO / Customer Service</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Secondary School</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Customer Associate</span>
												<span class="bdr dib p2px10px mr5px mt2px"> BPO</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Non Voice Process</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Process Associate</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Call Center</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">Contact Person</td>
						<td class="p5px">Sahil Saxena</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Jaipur</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9634033103 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:sahil.elit@gmail.com"> sahil.elit@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="925475">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="920258"><input type="hidden" name="subject" value="Applied for Customer Care Associate">
					</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-jaipur.htm" title="Jobs in Jaipur">Jaipur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mohali.htm" title="Jobs in Mohali">Mohali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-lucknow.htm" title="Jobs in Lucknow">Lucknow</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">(5)</span><a href="jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</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: 'bTBocVdnMkNhM0NGVkxXcHFtMDBpQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:75:"Job openings for customer care associate in jaipur | Elite Busines Solution";i:2;s:204:"Customer Care Associate Jobs,Customer Care Associate Jobs in Jaipur,Customer Care Associate Vacancy in Jaipur,Customer Care Associate jobs in India,ITES / BPO / KPO / LPO / Customer Service jobs in Jaipur";i:3;s:330:"Apply for Customer Care Associate Jobs in Jaipur India - Customer Care Associate Vacancy  in ITES / BPO / KPO / LPO / Customer Service field with 0 to 5 years Work Experience, Key Skills are Customer Associate, BPO, Non Voice Process, Process Associate, Call Center, ITES / BPO / KPO / LPO / Customer Service jobs in Jaipur  India";i:4;s:939:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Customer Care Associate",
		  "baseSalary": " 1  Lac  50 Thousand  To  3  Lac ",
		  "description": "Hiring For International BPO

- Customer Support
- Technical Support
- Calls,Email And Chat Process
- International Explosure
- Opportunity To Move Abroad
- Salary: Upto 5 LPA

Contact:
HR Sahil",
		  "educationRequirements": "Secondary School",
		  "experienceRequirements": "0 - 5 Years",
		  "industry": "ITES / BPO / KPO / LPO / Customer Service",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Rajasthan",
		      "addressRegion": "Jaipur"
		    }
		  },
		 "qualifications": "Secondary School",
		     "skills": "Customer Associate, BPO, Non Voice Process, Process Associate, Call Center"
		  }
		</script>
		";i:5;N;}