a:6:{i:0;s:5154:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for export coordinator in mumbai</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.columbusglobe.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.columbusglobe.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for export coordinator in mumbai</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">Export Coordinator</div>
									<p class="mt7px fw6">Mumbai</p>
									
				<br>
				<p class="aj mt7px">Communication with Buyers Overseas. Involving Introductory Calls, Understanding Requirements, Sending Estimates, Followup, Co Ordination with Cha for Shipment, Completion of Orders & Payment Reminders & Communications.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 7 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  50 Thousand  To  2  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Export / Import / Merchandising</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Export coordinator</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:ameetsanap@columbusglobe.co"> ameetsanap@columbusglobe.co </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="post-resume-form-new.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="Apply For Job" />
					<input type="hidden" name="catalog_mi" value="733509">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="674435"><input type="hidden" name="subject" value="Applied for Export Coordinator">
					</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-mumbai.htm" title="Jobs in Mumbai">Mumbai</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">(1)</span><a href="jobs-in-export-import-merchandising-fid.htm" title="Export / Import / Merchandising Jobs">Export / Import / Merchandisin...</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: 'emU1clQyRmRNZ05wZXV4KzR6RldLUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:66:"Job openings for export coordinator in mumbai | Columbus Globe (I)";i:2;s:174:"Export Coordinator Jobs,Export Coordinator Jobs in Mumbai,Export Coordinator Vacancy in Mumbai,Export Coordinator jobs in India,Export / Import / Merchandising jobs in Mumbai";i:3;s:244:"Apply for Export Coordinator Jobs in Mumbai India - Export Coordinator Vacancy  in Export / Import / Merchandising field with 2 to 7 years Work Experience, Key Skills are Export coordinator, Export / Import / Merchandising jobs in Mumbai  India";i:4;s:1009:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Export Coordinator",
		  "baseSalary": " 1  Lac  50 Thousand  To  2  Lac  50 Thousand ",
		  "description": "Communication with Buyers Overseas. Involving Introductory Calls, Understanding Requirements, Sending Estimates, Followup, Co Ordination with Cha for Shipment, Completion of Orders & Payment Reminders & Communications.",
		  "educationRequirements": "Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		  "experienceRequirements": "2 - 7 Years",
		  "industry": "Export / Import / Merchandising",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		     "skills": "Export coordinator"
		  }
		</script>
		";i:5;N;}