a:6:{i:0;s:12201:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for project manager in varanasi</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.recruation.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.recruation.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for project manager in varanasi</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">Project Manager</div>
									<p class="mt7px fw6">Varanasi</p>
									
				<br>
				<p class="aj mt7px">JD For Project Manager:<br />
<br />
 <br />
<br />
The Project Manager shall have the full responsibility for assigned electrical projects. He will be responsible for estimating, cost control, forecasting and scheduling multiple projects through final project completion.<br />
<br />
 <br />
<br />
The PM will be the companies’ point of contact and will coordinate the job team to meet all project goals.<br />
<br />
 <br />
<br />
Responsibilities:<br />
<br />
1.      PM responsibilities include: submittals, purchase orders, materials contracts and subcontracts, change orders, as-built documents, and to ensure the high quality of all work performed at a job site.<br />
<br />
2.      Plan, schedule, and maintain timelines by optimizing resources in a fast paced construction/installation environment.<br />
<br />
3.      Manage cost, schedule and resource-loaded schedules providing billings, cash flow and manpower forecasting with complete job costing reviews.<br />
<br />
4.      Monitoring for compliance with all applicable laws. Assist in the preparation of technical proposals, including assisting in the design and writing the scope of work, management plans, work sequence, safety, and quality control and commissioning.<br />
<br />
5.      Manage all job close out procedures.<br />
<br />
6.      Develop/maintain a network of professional relationships within the industry.<br />
<br />
 <br />
<br />
Qualifications:<br />
<br />
1.      Bachelor’s Degree - Electrical Engineering, with 4-5 years of experience working in electrical, construction, or: Licensed Electrician (MA, RI, CT) with 03 years’ experience in electrical supervision.<br />
<br />
2.      History of strong client relations and people management skills.<br />
<br />
3.      Proficiency using various software applications (MS Office Suite).<br />
<br />
4.      Experience in reading specifications and applicable requirements.<br />
<br />
5.      Experience with contract documents, specifications, subcontracts, contract addendum, and change orders</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">7 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  50 Thousand  To  3  Lac  75 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Engineering/ Engineering Design / R&D / Quality</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Professional Degree, B.Com</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Project Manager</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">Energasia  smart poles pvt ltd</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Energasia smart poles pvt ltd  is a private  incorporated on 11 may 2016 , it is classified as a non -govt company 
Energasia smart  poles pvt ltd - intelligent telecom grade  street light  poles , integrated command and control center and smart street lights manfacturer  from new delhi</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">pankaj singh</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">near hotel surabhi  , pahariya</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9005165681 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:info@recruation.co.in"> info@recruation.co.in </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="post-resume-form1.html">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="Post Your Resume" />
					<input type="hidden" name="catalog_mi" value="648198">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="921702"><input type="hidden" name="subject" value="Applied for Project Manager">
					</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-varanasi.htm" title="Jobs in Varanasi">Varanasi</a> <b class="alpha50 bn small">(11)</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">(5)</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">(3)</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-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(2)</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">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-thane.htm" title="Jobs in Thane">Thane</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-nizamabad.htm" title="Jobs in Nizamabad">Nizamabad</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>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-meerut.htm" title="Jobs in Meerut">Meerut</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</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">(5)</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">(2)</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 "><span class="fr">(2)</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">(2)</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 "><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>
										<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-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</a></p>
										<p class="mb5px "><span class="fr">(1)</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">(1)</span><a href="jobs-in-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</a></p>
										<p class="mb5px "><span class="fr">(1)</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">(1)</span><a href="jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</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: 'VitIam4vOXF5QlM1MzZlOUc2VGthZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:79:"Job openings for project manager in varanasi | Recruation Placement Consultancy";i:2;s:184:"Project Manager Jobs,Project Manager Jobs in Varanasi,Project Manager Vacancy in Varanasi,Project Manager jobs in India,Engineering/ Engineering Design / R&D / Quality jobs in Varanasi";i:3;s:271:"Apply for Project Manager Jobs in Varanasi India - Project Manager Vacancy  in Engineering/ Engineering Design / R&D / Quality field with 7 to 8 years Work Experience, Key Skills are Project Manager, Engineering/ Engineering Design / R&D / Quality jobs in Varanasi  India";i:4;s:2552:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Project Manager",
		  "baseSalary": " 3  Lac  50 Thousand  To  3  Lac  75 Thousand ",
		  "description": "JD For Project Manager:

 

The Project Manager shall have the full responsibility for assigned electrical projects. He will be responsible for estimating, cost control, forecasting and scheduling multiple projects through final project completion.

 

The PM will be the companies’ point of contact and will coordinate the job team to meet all project goals.

 

Responsibilities:

1.      PM responsibilities include: submittals, purchase orders, materials contracts and subcontracts, change orders, as-built documents, and to ensure the high quality of all work performed at a job site.

2.      Plan, schedule, and maintain timelines by optimizing resources in a fast paced construction/installation environment.

3.      Manage cost, schedule and resource-loaded schedules providing billings, cash flow and manpower forecasting with complete job costing reviews.

4.      Monitoring for compliance with all applicable laws. Assist in the preparation of technical proposals, including assisting in the design and writing the scope of work, management plans, work sequence, safety, and quality control and commissioning.

5.      Manage all job close out procedures.

6.      Develop/maintain a network of professional relationships within the industry.

 

Qualifications:

1.      Bachelor’s Degree - Electrical Engineering, with 4-5 years of experience working in electrical, construction, or: Licensed Electrician (MA, RI, CT) with 03 years’ experience in electrical supervision.

2.      History of strong client relations and people management skills.

3.      Proficiency using various software applications (MS Office Suite).

4.      Experience in reading specifications and applicable requirements.

5.      Experience with contract documents, specifications, subcontracts, contract addendum, and change orders",
		  "educationRequirements": "Professional Degree, B.Com",
		  "experienceRequirements": "7 - 8 Years",
		  "industry": "Engineering/ Engineering Design / R&D / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Uttar Pradesh",
		      "addressRegion": "Varanasi"
		    }
		  },
		 "qualifications": "Professional Degree, B.Com",
		     "skills": "Project Manager"
		  }
		</script>
		";i:5;N;}