a:6:{i:0;s:14193:"				<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="h1"><h1>Job openings for power electronics head in pune</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.vijayamanagement.net/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.vijayamanagement.net/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for power electronics head in pune</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Power Electronics Head (R& D Manager)</div>
									<p class="mt7px fw6">Pune</p>
									
				<br>
				<p class="aj mt7px">Experience- 8+ years with   UPS, Power supply, SFC, Inverter and Battery Chargers Manufacturer<br />
<br />
Age group- Below 50 years<br />
<br />
Qualification:<br />
<br />
University degree in engineering or equivalent is required - A Master and or any other further qualification related to R&D is appreciated<br />
<br />
DUTIES AND RESPONSIBILITIES:<br />
<br />
A) Research & Development<br />
<br />
- Resume responsibility for the whole research and development process starting from product concept  to final approval to invest in the developed product.<br />
<br />
- Assess the requirements for new products based on the market needs in cooperation with Sales department and selected customers sample.<br />
<br />
- Improving the product range and keeping the product range up to date with the new trends in technology and phase out obsolete products.<br />
<br />
- Coordinate with concerned departments to update the product range with the developed product, e.g. Sales to promote the product, Design and Engineering for drawings and specifications, Materials Department for sourcing suppliers and procurement, etc.<br />
<br />
- Perform complete review, verification, and validation for new products to ensure conformity to requirement and fitness for use.<br />
<br />
- Assist in updating the company catalogs and brochures.<br />
<br />
- Submit periodical reports to management showing the status of R&D progress.<br />
<br />
- Oversee all activities of  testing, maintaining proper link and coordination between R&D, product design, testing and validation activities.<br />
<br />
- Maintain close coordination with R&D to introduce new products to the  product range, creating all necessary drawing, item master, catalog drawing, etc.<br />
<br />
- Oversee the Design and Engineering planning activities, manage & coordinate the work among work groups.<br />
<br />
- Oversee the design review, verification and validation for the new products, to ensure conformity to specifications and fitness for use.<br />
<br />
- Oversee the evaluation of new components in accordance with design specification in coordination with Purchase and Quality Assurance Departments.<br />
<br />
- Establish</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">8 - 14 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To   20 Lac  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">B.Tech/B.E</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Good Communication</span>
												<span class="bdr dib p2px10px mr5px mt2px"> UPS</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Power supply</span>
												<span class="bdr dib p2px10px mr5px mt2px"> SFC</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Power Electronics Head</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Research & Development Manager</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Sales</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">Mr. D.M.Patil</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">600, Krushna Business Centre,1st Floor, Behind Sai Service Petrol Pump</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9096900878 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:vijayamgmt@gmail.com"> vijayamgmt@gmail.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="364232">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="993275"><input type="hidden" name="subject" value="Applied for Power Electronics Head (R& D 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-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(54)</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-nashik.htm" title="Jobs in Nashik">Nashik</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-nagpur.htm" title="Jobs in Nagpur">Nagpur</a> <b class="alpha50 bn small">(3)</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">(2)</b></span>
										<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">(2)</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">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-solapur.htm" title="Jobs in Solapur">Solapur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><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 "><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-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-jalgaon.htm" title="Jobs in Jalgaon">Jalgaon</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-bhilainagar.htm" title="Jobs in Bhilai Nagar">Bhilai Nagar</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">(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">(9)</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-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">(5)</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">(5)</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">(4)</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 "><span class="fr">(3)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px "><span class="fr">(3)</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">(2)</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">(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-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</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-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-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-cargo-freight-transportation-packaging-shipping-logistic-fid.htm" title="Cargo / Freight / Transportation / Packaging / Shipping/Logistic Jobs">Cargo / Freight / Transportati...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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">(1)</span><a href="jobs-in-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</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: 'RnZWWUQvcEUveVlFb01pdDBKcjhGZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:76:"Job openings for power electronics head in pune | Vijaya Management Services";i:2;s:260:"Power Electronics Head (R& D Manager) Jobs,Power Electronics Head (R& D Manager) Jobs in Pune,Power Electronics Head (R& D Manager) Vacancy in Pune,Power Electronics Head (R& D Manager) jobs in India,Engineering/ Engineering Design / R&D / Quality jobs in Pune";i:3;s:398:"Apply for Power Electronics Head (R& D Manager) Jobs in Pune India - Power Electronics Head (R& D Manager) Vacancy  in Engineering/ Engineering Design / R&D / Quality field with 8 to 14 years Work Experience, Key Skills are Good Communication, UPS, Power supply, SFC, Power Electronics Head, Research & Development Manager, Sales, Engineering/ Engineering Design / R&D / Quality jobs in Pune  India";i:4;s:2773:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Power Electronics Head (R& D Manager)",
		  "baseSalary": " 10  Lac  To   20 Lac ",
		  "description": "Experience- 8+ years with   UPS, Power supply, SFC, Inverter and Battery Chargers Manufacturer

Age group- Below 50 years

Qualification:

University degree in engineering or equivalent is required - A Master and or any other further qualification related to R&D is appreciated

DUTIES AND RESPONSIBILITIES:

A) Research & Development

- Resume responsibility for the whole research and development process starting from product concept  to final approval to invest in the developed product.

- Assess the requirements for new products based on the market needs in cooperation with Sales department and selected customers sample.

- Improving the product range and keeping the product range up to date with the new trends in technology and phase out obsolete products.

- Coordinate with concerned departments to update the product range with the developed product, e.g. Sales to promote the product, Design and Engineering for drawings and specifications, Materials Department for sourcing suppliers and procurement, etc.

- Perform complete review, verification, and validation for new products to ensure conformity to requirement and fitness for use.

- Assist in updating the company catalogs and brochures.

- Submit periodical reports to management showing the status of R&D progress.

- Oversee all activities of  testing, maintaining proper link and coordination between R&D, product design, testing and validation activities.

- Maintain close coordination with R&D to introduce new products to the  product range, creating all necessary drawing, item master, catalog drawing, etc.

- Oversee the Design and Engineering planning activities, manage & coordinate the work among work groups.

- Oversee the design review, verification and validation for the new products, to ensure conformity to specifications and fitness for use.

- Oversee the evaluation of new components in accordance with design specification in coordination with Purchase and Quality Assurance Departments.

- Establish",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "8 - 14 Years",
		  "industry": "Engineering/ Engineering Design / R&D / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Pune"
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "Good Communication, UPS, Power supply, SFC, Power Electronics Head, Research & Development Manager, Sales"
		  }
		</script>
		";i:5;N;}