a:6:{i:0;s:8326:"				<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>New Product Development Manager - Home Appliances Company</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.tdsindia.co.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.tdsindia.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> New Product Development Manager - Home Appliances Company</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 10 - 20 Years</p>
				
									
					<div>
					<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="277807">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="877474"><input type="hidden" name="subject" value="Applied for New Product Development Manager - Home Appliances Company">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">New Product Development  - Home Appliances Division.<br />
project Management,Product Management,Development Management,Project Communications,Project Tracking,Project Leading,Project Scheduling,Product Engineering,Project Development,Project Monitoring<br />
to Handle New Range Projects from Its Inception Stage. to Prepare An Activity Time Chart for the Project, Monitor the Same On a Weekly Basis, Suggest Course Corrections in Case of Delays and Ensure Timelines are Managed and Met.<br />
npd - New Product Development. Providing Cad Support & Technical Inputs Thru' Design Reviews Bom Verifications/benchmarking/quality Tools. Provide Trainings to Service Centers & Marketing. Patents & Technical Papers. Cost Reduction Projects. Plastic Product Component Designing. New Technology Innovations Projects. C2c Project Handling Till Pilot Lot Production Trials. Product Differentiators Technology Identification.</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 15  Lac  To   20 Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">Manufacturing / Production / Quality</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">10 - 20 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">B.Tech/B.E</td>
					</tr>					
									
				</table>
				
				
				</div>
				
				<br>
				<div class="bdrT pt20px">
									<p class="xlarge b">Key Skills</p>
					<div class="mt10px dif">
											<span class="bn dib p5px10px c2px headVr mr7px mb7px">Product Development Management</span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">Ravin Thakur</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Address</td>
						<td class="p5px">Sco-910, Nac Manimajra, Near Housing Board Red Light</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">8427691360 </td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:ravinthakur@tdsjob.com"> ravinthakur@tdsjob.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="277807">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="877474"><input type="hidden" name="subject" value="Applied for New Product Development Manager - Home Appliances Company">
					</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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-amritsar.htm" title="Jobs in Amritsar">Amritsar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr 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 headVr 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 headVr mr7px mb7px "><a class="dif" href="jobs-in-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-satna.htm" title="Jobs in Satna">Satna</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-solan.htm" title="Jobs in Solan">Solan</a> <b class="alpha50 bn small">(1)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Functional Area</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy / Management Consulting</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Quality</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-medical-health-care-hospitals-fid.htm" title="Medical / Health Care / Hospitals Jobs">Medical / Health Care / Hospitals</a> <b class="alpha50 bn small">(1)</b></span>
									
				</div>
				</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: 'ZUhxSE9lRjVBUjJ4ZVZuZzZIdXdnUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:132:"New Product Development Manager - Home Appliances Company Jobs in Himachal Pradesh - Vacancy in Manufacturing / Production / Quality";i:2;s:317:"New Product Development Manager - Home Appliances Company Jobs,New Product Development Manager - Home Appliances Company Jobs in ,New Product Development Manager - Home Appliances Company Vacancy in ,New Product Development Manager - Home Appliances Company jobs in India,Manufacturing / Production / Quality jobs in ";i:3;s:334:"Apply for New Product Development Manager - Home Appliances Company Jobs in  India - New Product Development Manager - Home Appliances Company Vacancy  in Manufacturing / Production / Quality field with 10 to 20 years Work Experience, Key Skills are Product Development Management, Manufacturing / Production / Quality jobs in   India";i:4;s:1608:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "New Product Development Manager - Home Appliances Company",
		  "baseSalary": " 15  Lac  To   20 Lac ",
		  "description": "New Product Development  - Home Appliances Division.
project Management,Product Management,Development Management,Project Communications,Project Tracking,Project Leading,Project Scheduling,Product Engineering,Project Development,Project Monitoring
to Handle New Range Projects from Its Inception Stage. to Prepare An Activity Time Chart for the Project, Monitor the Same On a Weekly Basis, Suggest Course Corrections in Case of Delays and Ensure Timelines are Managed and Met.
npd - New Product Development. Providing Cad Support & Technical Inputs Thru' Design Reviews Bom Verifications/benchmarking/quality Tools. Provide Trainings to Service Centers & Marketing. Patents & Technical Papers. Cost Reduction Projects. Plastic Product Component Designing. New Technology Innovations Projects. C2c Project Handling Till Pilot Lot Production Trials. Product Differentiators Technology Identification.",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "10 - 20 Years",
		  "industry": "Manufacturing / Production / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Himachal Pradesh",
		      "addressRegion": ""
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "Product Development Management"
		  }
		</script>
		";i:5;N;}