a:6:{i:0;s:13682:"					<section class="headBg theme2 bread-right">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for project manager in kolhapur</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.pacificconsultancy.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.pacificconsultancy.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for project manager in kolhapur</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="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Project Manager</div>
									<p class="mt7px fw6">Kolhapur</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<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="434170">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="990472"><input type="hidden" name="subject" value="Applied for Project Manager">
					</form>
			
									</div></div>
				</div>
								<br />
				<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53d0b0627cb3c661"></script>
				<div class="fo">
				<div class="addthis_sharing_toolbox dib vam mr10px"></div>
				<a href="https://www.pacificconsultancy.in/vacancy_990472.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px">Job Position - Project Manager<br />
<br />
Location - Kolhapur<br />
.<br />
Job Description - A project manager oversees different initiatives or projects of a business, monitors their progress and completion, and ensures that they meet the expectations of the clients. Although a project manager usually doesn’t need to perform the hands-on tasks involved in a project, he or she must possess some degree of knowledge with regards to the various aspects of a project.<br />
Responsibilities and Duties<br />
•	Coordinating with cross-discipline team members to make sure that all parties are on track with project requirements, deadlines, and schedules.<br />
•	Meeting with project team members to identify and resolve issues.<br />
•	Submitting project deliverables and ensuring that they adhere to quality standards.<br />
•	Preparing status reports by gathering, analyzing, and summarizing relevant information.<br />
•	Establishing effective project communication plans and ensuring their execution.<br />
•	Facilitating change requests to ensure that all parties are informed of the impacts on schedule and budget.<br />
•	Coordinating the development of user manuals, training materials, and other documents as needed to enable successful implementation and turnover of the process or system to the clients.<br />
Qualifications and Skills<br />
Skills -<br />
•	Proven experience in project management.<br />
•	Ability to lead project teams of various sizes and see them through to completion.<br />
•	Strong understanding of formal project management methodologies.<br />
•	Experience as a construction project manager, IT project manager, or ERP project manager.<br />
•	Able to complete projects in a timely manner.<br />
•	Understanding of ERP implementation.<br />
•	Experience overseeing a construction project.<br />
•	Budget management experience.<br />
 Experience:<br />
•	1 year Experience (Preferred)<br />
•	Freshers can apply also.<br />
Education:<br />
•	A bachelor’s degree or master's degree in a related field.<br />
•	 Masters (MBA) (Any)<br />
Job Type: Full-time</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">0 - 2 Years</td>
				</tr>			
									<tr>
					<td class="alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</td>
					</tr>
									
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Corporate Planning & Strategy / Management Consulting</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.B.A, M.B.A/PGDM</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">lead project team</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Project manager</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Project management</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Project 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">Contact Person</td>
						<td class="p5px">Aishwarya</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">1785 E Ward, Ghugare Complex, G Enterprises Building, Shahupuri 4th Lane, Kolhapur Maharashtra Pin-416008</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7030633999 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:info@pacificconsultancy.in"> info@pacificconsultancy.in </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="434170">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="990472"><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-kolhapur.htm" title="Jobs in Kolhapur">Kolhapur</a> <b class="alpha50 bn small">(121)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-belgaum.htm" title="Jobs in Belgaum">Belgaum</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>
									</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">(21)</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">(14)</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">(13)</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">(12)</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">(11)</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-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(7)</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">(6)</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">(4)</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">(4)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(3)</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 spanlist dn"><span class="fr">(3)</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">(2)</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 spanlist dn"><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 spanlist dn"><span class="fr">(2)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(2)</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 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-network-administration-security-fid.htm" title="IT Software - Network Administration, Security Jobs">IT Software - Network Administ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-media-entertainment-tv-films-production-broadcasting-fid.htm" title="Media / Entertainment /  TV / Films / Production / Broadcasting Jobs">Media / Entertainment /  TV / ...</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>
										<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: 'c084UFNvaU94NVdGL2ZyN3dDRmc0Zz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:100:"Job openings for project manager in kolhapur | Pacific Placements and Business Consultancy Pvt. Ltd.";i:2;s:190:"Project Manager Jobs,Project Manager Jobs in Kolhapur,Project Manager Vacancy in Kolhapur,Project Manager jobs in India,Corporate Planning & Strategy / Management Consulting jobs in Kolhapur";i:3;s:343:"Apply for Project Manager Jobs in Kolhapur India - Project Manager Vacancy  in Corporate Planning & Strategy / Management Consulting field with 0 to 2 years Work Experience, Key Skills are lead project team, Project manager, Project management, Project coordinator, Corporate Planning & Strategy / Management Consulting jobs in Kolhapur  India";i:4;s:3166:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Project Manager",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "990472"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "7030633999",
	      "email" : "info@pacificconsultancy.in"  
	       },
		  "url": "https://www.pacificconsultancy.in/job-openings-for-project-manager-kolhapur-990472.htm",
          "datePosted": "2021-08-17",
          
		  "baseSalary": "",
		  "description": "Job Position - Project Manager

Location - Kolhapur
.
Job Description - A project manager oversees different initiatives or projects of a business, monitors their progress and completion, and ensures that they meet the expectations of the clients. Although a project manager usually doesn’t need to perform the hands-on tasks involved in a project, he or she must possess some degree of knowledge with regards to the various aspects of a project.
Responsibilities and Duties
•	Coordinating with cross-discipline team members to make sure that all parties are on track with project requirements, deadlines, and schedules.
•	Meeting with project team members to identify and resolve issues.
•	Submitting project deliverables and ensuring that they adhere to quality standards.
•	Preparing status reports by gathering, analyzing, and summarizing relevant information.
•	Establishing effective project communication plans and ensuring their execution.
•	Facilitating change requests to ensure that all parties are informed of the impacts on schedule and budget.
•	Coordinating the development of user manuals, training materials, and other documents as needed to enable successful implementation and turnover of the process or system to the clients.
Qualifications and Skills
Skills -
•	Proven experience in project management.
•	Ability to lead project teams of various sizes and see them through to completion.
•	Strong understanding of formal project management methodologies.
•	Experience as a construction project manager, IT project manager, or ERP project manager.
•	Able to complete projects in a timely manner.
•	Understanding of ERP implementation.
•	Experience overseeing a construction project.
•	Budget management experience.
 Experience:
•	1 year Experience (Preferred)
•	Freshers can apply also.
Education:
•	A bachelor’s degree or master's degree in a related field.
•	 Masters (MBA) (Any)
Job Type: Full-time",
		  "educationRequirements": "B.B.A, M.B.A/PGDM",
		  "experienceRequirements": "0 - 2 Years",
		  "industry": "Corporate Planning & Strategy / Management Consulting",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Kolhapur"
		    }
		  },
		 "qualifications": "B.B.A, M.B.A/PGDM",
		     "skills": "lead project team, Project manager, Project management, Project coordinator"
		  }
		</script>
		";i:5;N;}