a:6:{i:0;s:12655:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for premier hiring in </h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.reachpremier.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.reachpremier.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for premier hiring in </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">Premier Hiring For General Manager Purchase (scm) - Kolkata</div>
									<p class="mt7px fw6">Kolkata</p>
									
				<br>
				<p class="aj mt7px">Position in Procurement(Designation: General Manager / Sr.General Manager)<br />
<br />
• Qualification : B. Tech. / B.E. and MBA in Operations (preferable)<br />
• Experience : 15+ years of work experience with more than 5 years of similar experience<br />
• Age: 38-45 Years.<br />
• Location: Kolkata<br />
• Lead preparation of the procurement budget and monitor/ control departmental expenses<br />
• Establish procurement policies related to master production schedule<br />
• Undertake vendor development activities and leverage long-term relationships with vendors<br />
• Oversee and supervise bidding and negotiation process and award contracts to vendors<br />
• Leading the process of rate contracts<br />
• Coordination with the Unit Heads/ Commercial Heads for delivery of significant and high value purchase items at the Units<br />
• Manage procurement and inventory management within optimum costs<br />
• Oversee the process of scrap sales<br />
• Ensure risk mitigation through adherence to quality standards and safety norms<br />
• Ensure adherence to SOP for all for procurement related activities at Corporate<br />
• Review and approve contracts/ agreements.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">16 - 21 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px">  27 Lac  50 Thousand  To   35 Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Supply Chain / Purchase / Procurement</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.Tech/B.E</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">PROCUREMENT</span>
												<span class="bdr dib p2px10px mr5px mt2px">HEAD PURCHASE</span>
												<span class="bdr dib p2px10px mr5px mt2px">HEAD SCM</span>
												<span class="bdr dib p2px10px mr5px mt2px">MATERIAL 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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Huge Diversified Group from Kolkata.</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Huge Diversified Group from Kolkata having ther manufacturing units spread around PAN India.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:premierconsultant@rediffmail.com"> premierconsultant@rediffmail.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="302424">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="552036"><input type="hidden" name="subject" value="Applied for Premier Hiring for General Manager Purchase (scm) - Kolkata">
					</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-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(39)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jorhat.htm" title="Jobs in Jorhat">Jorhat</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-surat.htm" title="Jobs in Surat">Surat</a> <b class="alpha50 bn small">(5)</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">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-guwahati.htm" title="Jobs in Guwahati">Guwahati</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-allahabad.htm" title="Jobs in Allahabad">Allahabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gandhidham.htm" title="Jobs in Gandhidham">Gandhidham</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-east-sikkim.htm" title="Jobs in East Sikkim">East Sikkim</a> <b class="alpha50 bn small">(1)</b></span>
										<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">(1)</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">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-chennai.htm" title="Jobs in Chennai">Chennai</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-bhubaneswar.htm" title="Jobs in Bhubaneswar">Bhubaneswar</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-satna.htm" title="Jobs in Satna">Satna</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">(19)</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">(10)</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">(7)</span><a href="jobs-in-front-office-reception-computer-operator-assistant-fid.htm" title="Front Office / Reception/Computer Operator/Assistant Jobs">Front Office / Reception/Compu...</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-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px "><span class="fr">(4)</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">(3)</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">(2)</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 "><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-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-hotel-restaurants-travel-airlines-fid.htm" title="Hotel / Restaurants /Travel / Airlines Jobs">Hotel / Restaurants /Travel / ...</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-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px spanlist dn"><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-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</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: 'Lys1VjRNWGg3TlZ1QWFOY2lrRXBnZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:68:"Job openings for premier hiring in  | Premier Management Consultants";i:2;s:347:"Premier Hiring for General Manager Purchase (scm) - Kolkata Jobs,Premier Hiring for General Manager Purchase (scm) - Kolkata Jobs in Kolkata,Premier Hiring for General Manager Purchase (scm) - Kolkata Vacancy in Kolkata,Premier Hiring for General Manager Purchase (scm) - Kolkata jobs in India,Supply Chain / Purchase / Procurement jobs in Kolkata";i:3;s:378:"Apply for Premier Hiring for General Manager Purchase (scm) - Kolkata Jobs in Kolkata India - Premier Hiring for General Manager Purchase (scm) - Kolkata Vacancy  in Supply Chain / Purchase / Procurement field with 16 to 21 years Work Experience, Key Skills are PROCUREMENT,HEAD PURCHASE,HEAD SCM,MATERIAL MANAGEMENT, Supply Chain / Purchase / Procurement jobs in Kolkata  India";i:4;s:1868:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Premier Hiring for General Manager Purchase (scm) - Kolkata",
		  "baseSalary": "  27 Lac  50 Thousand  To   35 Lac ",
		  "description": "Position in Procurement(Designation: General Manager / Sr.General Manager)

• Qualification : B. Tech. / B.E. and MBA in Operations (preferable)
• Experience : 15+ years of work experience with more than 5 years of similar experience
• Age: 38-45 Years.
• Location: Kolkata
• Lead preparation of the procurement budget and monitor/ control departmental expenses
• Establish procurement policies related to master production schedule
• Undertake vendor development activities and leverage long-term relationships with vendors
• Oversee and supervise bidding and negotiation process and award contracts to vendors
• Leading the process of rate contracts
• Coordination with the Unit Heads/ Commercial Heads for delivery of significant and high value purchase items at the Units
• Manage procurement and inventory management within optimum costs
• Oversee the process of scrap sales
• Ensure risk mitigation through adherence to quality standards and safety norms
• Ensure adherence to SOP for all for procurement related activities at Corporate
• Review and approve contracts/ agreements.",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "16 - 21 Years",
		  "industry": "Supply Chain / Purchase / Procurement",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kolkata"
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "PROCUREMENT,HEAD PURCHASE,HEAD SCM,MATERIAL MANAGEMENT"
		  }
		</script>
		";i:5;N;}