a:6:{i:0;s:8480:"				<section id="middle">
				<div class="wrap" id="bodyFormat1">
				<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>(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada Per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.spnindiaplacement.co.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.spnindiaplacement.co.in/current-job.htm" title="Current Job">Current Job</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> (canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada Per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 1 - 15 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="757881">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="752353"><input type="hidden" name="subject" value="Applied for (canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px">  25 Lac  To   30 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">1 - 15 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Secondary School</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">Welder</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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">S.P.N. INDIA PLACEMENT PVT. LTD.</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">S.P.N</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">Mr. Deepak Sharma</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Address</td>
						<td class="p5px">Sipahi Road, 03rd Floor, Room Number 17, South 120 Town Centre, Markham On L6G 1C3</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">7047777604 </td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:indiaplacement78@gmail.com"> indiaplacement78@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="757881">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="752353"><input type="hidden" name="subject" value="Applied for (canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,">
					</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-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-hisar.htm" title="Jobs in Hisar">Hisar</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">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr 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 headVr mr7px mb7px "><a class="dif" href="jobs-in-canada.htm" title="Jobs in Canada">Canada</a> <b class="alpha50 bn small">(476)</b></span>
												<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-uae.htm" title="Jobs in United Arab Emirates">United Arab Emirates</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-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Quality</a> <b class="alpha50 bn small">(135)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-security-fid.htm" title="Security / Law Enforcement / Defence Force Jobs">Security / Law Enforcement / Defence Force</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-trade-fid.htm" title="Self Employed / Entrepreneur / Independent Consultant Jobs">Self Employed / Entrepreneur / Independent Consultant</a> <b class="alpha50 bn small">(348)</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: 'eDFkWFVYQXJZc1pXZkhGSDFkOHFyZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:231:"(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Jobs in Canada - Vacancy in Manufacturing / Production / Quality";i:2;s:754:"(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Jobs,(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Jobs in ,(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Vacancy in ,(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, jobs in Canada,Manufacturing / Production / Quality jobs in ";i:3;s:529:"Apply for (canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Jobs in  Canada - (canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes, Vacancy  in Manufacturing / Production / Quality field with 1 to 15 years Work Experience, Key Skills are Welder, Manufacturing / Production / Quality jobs in   Canada";i:4;s:890:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "(canada) Welder Government Approved Office Cv Selection On India, Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,",
		  "baseSalary": "  25 Lac  To   30 Lac ",
		  "description": "Salary 4500 Dollar Canada per Month + Free Food Rupees No Advance Government Throw Company Visa Yes,",
		  "educationRequirements": "Secondary School",
		  "experienceRequirements": "1 - 15 Years",
		  "industry": "Manufacturing / Production / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "",
		      "addressRegion": ""
		    }
		  },
		 "qualifications": "Secondary School",
		     "skills": "Welder"
		  }
		</script>
		";i:5;N;}