a:6:{i:0;s:15711:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for dispatch executive in raipur</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.careeronhr.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.careeronhr.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for dispatch executive in raipur</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">Immediate Requirement For The Post Of Dispatch Executive For One Of The Leading Company At Raipur.</div>
									<p class="mt7px fw6">Raipur</p>
									
				<br>
				<p class="aj mt7px">Responsibilities and Duties<br />
Timely Dispatch of Goods to Customers<br />
Marinating Warehouse as per Audit requirement<br />
Accurate Stock Count<br />
Accurate Dispatches<br />
Maintaining & Sharing accurate MIS Reports<br />
Key Skills<br />
Proper management of FIFO. To insure Zero variance in FG. Strict Safety and discipline in Warehouse.<br />
Required Experience and Qualifications<br />
Any graduate with min. 2 yrs experience in dispatch<br />
Able to communicate and motivate coherently (both written & verbally)<br />
Understands the principles of manufacturing.<br />
Good supervisory & planning, & training skills</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 6 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  25 Thousand  To  3  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Cargo / Freight / Transportation / Packaging / Shipping/Logistic</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Secondary School, Vocational Course, Diploma, 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">Dispatch Assistant</span>
												<span class="bdr dib p2px10px mr5px mt2px">Dispatch Executive</span>
												<span class="bdr dib p2px10px mr5px mt2px">Dispatch Management</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:hr@careeronhr.com"> hr@careeronhr.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="867833">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="869636"><input type="hidden" name="subject" value="Applied for Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur.">
					</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-raipur.htm" title="Jobs in Raipur">Raipur</a> <b class="alpha50 bn small">(35)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-durg.htm" title="Jobs in Durg">Durg</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bhilainagar.htm" title="Jobs in Bhilai Nagar">Bhilai Nagar</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(5)</b></span>
										<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">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-raigarh.htm" title="Jobs in Raigarh">Raigarh</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bilaspur.htm" title="Jobs in Bilaspur">Bilaspur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-korba.htm" title="Jobs in Korba">Korba</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-palwal.htm" title="Jobs in Palwal">Palwal</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-agartala.htm" title="Jobs in Agartala">Agartala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-chandigarh.htm" title="Jobs in Chandigarh">Chandigarh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-amritsar.htm" title="Jobs in Amritsar">Amritsar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jalandhar.htm" title="Jobs in Jalandhar">Jalandhar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-ludhiana.htm" title="Jobs in Ludhiana">Ludhiana</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-patiala.htm" title="Jobs in Patiala">Patiala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jaipur.htm" title="Jobs in Jaipur">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jodhpur.htm" title="Jobs in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-rajnandgaon.htm" title="Jobs in Rajnandgaon">Rajnandgaon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-udaipur.htm" title="Jobs in Udaipur">Udaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kota.htm" title="Jobs in Kota">Kota</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jagdalpur.htm" title="Jobs in Jagdalpur">Jagdalpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-lucknow.htm" title="Jobs in Lucknow">Lucknow</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-surguja.htm" title="Jobs in Surguja">Surguja</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-cachar.htm" title="Jobs in Cachar">Cachar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-faridabad.htm" title="Jobs in Faridabad">Faridabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-vadodara.htm" title="Jobs in Vadodara">Vadodara</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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">(20)</span><a href="jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development/telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(6)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-cargo-freight-transportation-packaging-shipping-logistic-fid.htm" title="Cargo / Freight / Transportation / Packaging / Shipping/Logistic Jobs">Cargo / Freight / Transportati...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-system-programming-fid.htm" title="IT Software - System Programming Jobs">IT Software - System Programmi...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-architecture-interior-design-fid.htm" title="Architecture / Interior Design Jobs">Architecture / Interior Design</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-it-analyst-software-testing-fid.htm" title="IT Software - QA / Testing / Documentation Jobs">IT Software - QA / Testing / D...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-erp-crm-edp-software-fid.htm" title="IT Software- ERP / CRM / EDP / MIS Jobs">IT Software- ERP / CRM / EDP /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-defence-forces-security-forces-fid.htm" title="Defence Forces / Security Forces Jobs">Defence Forces / Security Forc...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-financial-services-banking-investments-insurance-stock-market-loan-fid.htm" title="Financial Services / Banking, Investments / Insurance / stock market / Loan Jobs">Financial Services / Banking, ...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</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: 'cnk5MGRVaUQ5eHpCUm5HM0FvNlNDQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:69:"Job openings for dispatch executive in raipur | CareerON HR Solutions";i:2;s:527:"Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. Jobs,Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. Jobs in Raipur,Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. Vacancy in Raipur,Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. jobs in India,Cargo / Freight / Transportation / Packaging / Shipping/Logistic jobs in Raipur";i:3;s:509:"Apply for Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. Jobs in Raipur India - Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur. Vacancy  in Cargo / Freight / Transportation / Packaging / Shipping/Logistic field with 2 to 6 years Work Experience, Key Skills are Dispatch Assistant,Dispatch Executive,Dispatch Management, Cargo / Freight / Transportation / Packaging / Shipping/Logistic jobs in Raipur  India";i:4;s:1583:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Immediate Requirement for the Post of Dispatch Executive for One of the Leading Company At Raipur.",
		  "baseSalary": " 1  Lac  25 Thousand  To  3  Lac ",
		  "description": "Responsibilities and Duties
Timely Dispatch of Goods to Customers
Marinating Warehouse as per Audit requirement
Accurate Stock Count
Accurate Dispatches
Maintaining & Sharing accurate MIS Reports
Key Skills
Proper management of FIFO. To insure Zero variance in FG. Strict Safety and discipline in Warehouse.
Required Experience and Qualifications
Any graduate with min. 2 yrs experience in dispatch
Able to communicate and motivate coherently (both written & verbally)
Understands the principles of manufacturing.
Good supervisory & planning, & training skills",
		  "educationRequirements": "Secondary School, Vocational Course, Diploma, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		  "experienceRequirements": "2 - 6 Years",
		  "industry": "Cargo / Freight / Transportation / Packaging / Shipping/Logistic",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Chhattisgarh",
		      "addressRegion": "Raipur"
		    }
		  },
		 "qualifications": "Secondary School, Vocational Course, Diploma, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		     "skills": "Dispatch Assistant,Dispatch Executive,Dispatch Management"
		  }
		</script>
		";i:5;N;}