a:6:{i:0;s:9981:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for electrical designer in delhi</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.righttimeplacement.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.righttimeplacement.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for electrical designer in delhi</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">Design And Engineering (Renewable Space)</div>
									<p class="mt7px fw6">Delhi</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="337786">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1047145"><input type="hidden" name="subject" value="Applied for Design and Engineering (Renewable Space)">
					</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="http://www.righttimeplacement.com/vacancy_1047145.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">Activities to be done :<br />
<br />
Planning and executing mechanical and electrical designs using CAD and other soft wares.<br />
<br />
Oversee installation, operation, maintenance, and repair to ensure that machines and equipment are installed and functioning according to specifications.<br />
<br />
Liaising with clients, designers, engineers, and manufacturers to ensure coherence and determine mechanical applications and requirements.<br />
<br />
To guide the mechanical contractor on the technical aspects in works being executed • Evaluating the performance of machinery or equipment, to assess wear and tear or to recommend improvements<br />
<br />
Collaborating with other engineering disciplines to ensure that designs are functional and comply with applicable regulations.<br />
<br />
Analyzing the problems projected by the Teams at the Plants and give solutions where possible.<br />
<br />
Investigate equipment failures and difficulties to diagnose faulty operation, and to make recommendations on maintenance.<br />
<br />
Managing project timelines, resources, and budgets.<br />
<br />
Preparing technical reports, design specifications documents, and operational manuals.<br />
<br />
Keeping abreast of the latest advancements in technology, design trends, and engineering best practices.<br />
<br />
Preparing the CAD layouts such as plot plan, master layout.<br />
<br />
Drawing reading and understandings.<br />
<br />
Identifying contractor for mechanical, electrical jobs at site and placing order on them<br />
<br />
Interaction with all consultants, mechanical, electrical<br />
<br />
Passing of all drawings and same are available at site, mechanical, elect.<br />
<br />
Assist site team with respect to technical details, mechanical, electrical related task.<br />
<br />
Regular monitoring to ensure design documents updated as per site. Client requirements<br />
<br />
QC and qty. check as per PO for each project, mechanical, electrical items.<br />
<br />
Issue technical specifications, mechanical, electrical items.<br />
<br />
Documentation required for site mechanical, electrical items</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">8 - 10 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 5  Lac  To  10  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">Diploma, B.Tech/B.E, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Renewable Utility</span>
												<span class="bdr dib p2px10px mr5px mt2px">C&I project</span>
												<span class="bdr dib p2px10px mr5px mt2px">CAD</span>
												<span class="bdr dib p2px10px mr5px mt2px">mechanical and electrical designs</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">Right Time Placement</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Right Time Placement</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:jobmap2021@gmail.com"> jobmap2021@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="337786">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1047145"><input type="hidden" name="subject" value="Applied for Design and Engineering (Renewable Space)">
					</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-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ghaziabad.htm" title="Jobs in Ghaziabad">Ghaziabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-noida.htm" title="Jobs in Noida">Noida</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="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">(2)</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">(1)</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">(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 "><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-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
									
				</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: 'YTEyaFFobDFDN21SSUFDUzczNlhOZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:68:"Job openings for electrical designer in delhi | Right Time Placement";i:2;s:275:"Design and Engineering (Renewable Space) Jobs,Design and Engineering (Renewable Space) Jobs in Delhi,Design and Engineering (Renewable Space) Vacancy in Delhi,Design and Engineering (Renewable Space) jobs in India,Engineering/ Engineering Design / R&D / Quality jobs in Delhi";i:3;s:368:"Apply for Design and Engineering (Renewable Space) Jobs in Delhi India - Design and Engineering (Renewable Space) Vacancy  in Engineering/ Engineering Design / R&D / Quality field with 8 to 10 years Work Experience, Key Skills are Renewable Utility,C&I project,CAD,mechanical and electrical designs, Engineering/ Engineering Design / R&D / Quality jobs in Delhi  India";i:4;s:3198:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Design and Engineering (Renewable Space)",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Right Time Placement",
	        "value":  "1047145"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Right Time Placement",
	      "description": "Right Time Placement",
	      "telephone" : "",
	      "email" : "jobmap2021@gmail.com"  
	       },
		  "url": "http://www.righttimeplacement.com/job-openings-for-electrical-designer-delhi-1047145.htm",
          "datePosted": "2022-03-30",
          
		  "baseSalary": " 5  Lac  To  10  Lac ",
		  "description": "Activities to be done :

Planning and executing mechanical and electrical designs using CAD and other soft wares.

Oversee installation, operation, maintenance, and repair to ensure that machines and equipment are installed and functioning according to specifications.

Liaising with clients, designers, engineers, and manufacturers to ensure coherence and determine mechanical applications and requirements.

To guide the mechanical contractor on the technical aspects in works being executed • Evaluating the performance of machinery or equipment, to assess wear and tear or to recommend improvements

Collaborating with other engineering disciplines to ensure that designs are functional and comply with applicable regulations.

Analyzing the problems projected by the Teams at the Plants and give solutions where possible.

Investigate equipment failures and difficulties to diagnose faulty operation, and to make recommendations on maintenance.

Managing project timelines, resources, and budgets.

Preparing technical reports, design specifications documents, and operational manuals.

Keeping abreast of the latest advancements in technology, design trends, and engineering best practices.

Preparing the CAD layouts such as plot plan, master layout.

Drawing reading and understandings.

Identifying contractor for mechanical, electrical jobs at site and placing order on them

Interaction with all consultants, mechanical, electrical

Passing of all drawings and same are available at site, mechanical, elect.

Assist site team with respect to technical details, mechanical, electrical related task.

Regular monitoring to ensure design documents updated as per site. Client requirements

QC and qty. check as per PO for each project, mechanical, electrical items.

Issue technical specifications, mechanical, electrical items.

Documentation required for site mechanical, electrical items",
		  "educationRequirements": "Diploma, B.Tech/B.E, M.Tech",
		  "experienceRequirements": "8 - 10 Years",
		  "industry": "Engineering/ Engineering Design / R&D / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR",
		      "addressRegion": "Delhi"
		    }
		  },
		 "qualifications": "Diploma, B.Tech/B.E, M.Tech",
		     "skills": "Renewable Utility,C&I project,CAD,mechanical and electrical designs"
		  }
		</script>
		";i:5;N;}