a:6:{i:0;s:7490:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for pipeline designer in mumbai</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.milliconconsultants.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.milliconconsultants.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for pipeline designer in mumbai</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">Se. Pipeline Designer (Offshore & Marine Industry)</div>
									<p class="mt7px fw6">Mumbai</p>
									
				<br>
				<p class="aj mt7px">Job Description: Sr. Pipeline Designer (Offshore & Marine Industry) <br />
If you have a proven track record from Offshore & Marine Industry, this is your chance to step up. You will be a part of a team of passionate colleagues and a company, which is well known for delivering quality and good services. The vacant position is based in our office in Mumbai.<br />
Job Responsibilities:<br />
1.	Prepare layout design/ drawings<br />
2.	Prepare pipeline alignment sheet<br />
3.	Prepare connections and other detail drawings and carry out self-check of drawings.<br />
4.	Prepare Shore approach drawings<br />
5.	Prepare Platform approach drawings <br />
6.	Prepare all type of crossing drawings<br />
7.	Prepare typical back fill and trench drawings<br />
8.	Prepare Installation drawings<br />
9.	Prepare Subsea equipment drawings (PLEM, PLET etc)<br />
10.	Prepare MTO and WCR inputs<br />
11.	Help in Clash checking with other Disciplines<br />
12.	Maintain master copy of all discipline’s deliverables<br />
13.	On shore pipeline detail drawings<br />
Essential Skills and Knowledge: <br />
1.	Must have done at least 4-5 offshore detailed engineering projects with Subsea pipeline scope of work. <br />
2.	Good knowledge of subsea pipeline engineering, including industry standard codes like ASME B31.4,31.8/ API codes etc.<br />
3.	Proficiency in listed design and analysis software is essential<br />
a.	Autocad<br />
b.	Caesar<br />
4.	Good Team player<br />
Work Experience & Education:<br />
1.	ITI Civil/ Mechanical or Diploma in Civil/ Mechanical Designing. <br />
2.	Minimum 5 years relevant experience in design and analyses of Subsea Pipelines in Oil & Gas industry.<br />
3.	Experience in industry accepted Design/Analysis software packages for Pipeline Design<br />
4.	Conversant with applicable DNV, ASME, BS, API and other relevant International Codes/Standards for subsea pipeline design and engineering</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">5 - 10 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 9  Lac  50 Thousand  To  10  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Oil / Gas / Petroleum</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Diploma, Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Pipeline Designing </span>
												<span class="bdr dib p2px10px mr5px mt2px"> Mechanical Designing</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">Email ID</td>
						<td class="p5px"><a href="mailto:contact_hr@milliconconsultants.com"> contact_hr@milliconconsultants.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="243480">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="882499"><input type="hidden" name="subject" value="Applied for Se. Pipeline Designer (Offshore & Marine Industry)">
					</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-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-palghar.htm" title="Jobs in Palghar">Palghar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-surat.htm" title="Jobs in Surat">Surat</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">(4)</span><a href="jobs-in-engineering-technical-rd-fid.htm" title="Engineering / Technical / R&D Jobs">Engineering / Technical / R&D</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-oil-gas-petroleum-fid.htm" title="Oil / Gas / Petroleum Jobs">Oil / Gas / Petroleum</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: 'Si9iSjVoWCtDbE84czZaR0NYb2wvQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:86:"Job openings for pipeline designer in mumbai | Millicon Consultant Engineers Pvt. Ltd.";i:2;s:292:"Se. Pipeline Designer (Offshore & Marine Industry) Jobs,Se. Pipeline Designer (Offshore & Marine Industry) Jobs in Mumbai,Se. Pipeline Designer (Offshore & Marine Industry) Vacancy in Mumbai,Se. Pipeline Designer (Offshore & Marine Industry) jobs in India,Oil / Gas / Petroleum jobs in Mumbai";i:3;s:312:"Apply for Se. Pipeline Designer (Offshore & Marine Industry) Jobs in Mumbai India - Se. Pipeline Designer (Offshore & Marine Industry) Vacancy  in Oil / Gas / Petroleum field with 5 to 10 years Work Experience, Key Skills are Pipeline Designing , Mechanical Designing, Oil / Gas / Petroleum jobs in Mumbai  India";i:4;s:2515:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Se. Pipeline Designer (Offshore & Marine Industry)",
		  "baseSalary": " 9  Lac  50 Thousand  To  10  Lac ",
		  "description": "Job Description: Sr. Pipeline Designer (Offshore & Marine Industry) 
If you have a proven track record from Offshore & Marine Industry, this is your chance to step up. You will be a part of a team of passionate colleagues and a company, which is well known for delivering quality and good services. The vacant position is based in our office in Mumbai.
Job Responsibilities:
1.	Prepare layout design/ drawings
2.	Prepare pipeline alignment sheet
3.	Prepare connections and other detail drawings and carry out self-check of drawings.
4.	Prepare Shore approach drawings
5.	Prepare Platform approach drawings 
6.	Prepare all type of crossing drawings
7.	Prepare typical back fill and trench drawings
8.	Prepare Installation drawings
9.	Prepare Subsea equipment drawings (PLEM, PLET etc)
10.	Prepare MTO and WCR inputs
11.	Help in Clash checking with other Disciplines
12.	Maintain master copy of all discipline’s deliverables
13.	On shore pipeline detail drawings
Essential Skills and Knowledge: 
1.	Must have done at least 4-5 offshore detailed engineering projects with Subsea pipeline scope of work. 
2.	Good knowledge of subsea pipeline engineering, including industry standard codes like ASME B31.4,31.8/ API codes etc.
3.	Proficiency in listed design and analysis software is essential
a.	Autocad
b.	Caesar
4.	Good Team player
Work Experience & Education:
1.	ITI Civil/ Mechanical or Diploma in Civil/ Mechanical Designing. 
2.	Minimum 5 years relevant experience in design and analyses of Subsea Pipelines in Oil & Gas industry.
3.	Experience in industry accepted Design/Analysis software packages for Pipeline Design
4.	Conversant with applicable DNV, ASME, BS, API and other relevant International Codes/Standards for subsea pipeline design and engineering",
		  "educationRequirements": "Diploma, Other Bachelor Degree",
		  "experienceRequirements": "5 - 10 Years",
		  "industry": "Oil / Gas / Petroleum",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "Diploma, Other Bachelor Degree",
		     "skills": "Pipeline Designing , Mechanical Designing"
		  }
		</script>
		";i:5;N;}