a:6:{i:0;s:8796:"				<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 etl developer in chennai</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.bsrics.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.bsrics.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for etl developer in chennai</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">ETL Developer</div>
									<p class="mt7px fw6">Chennai</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="696341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1037303"><input type="hidden" name="subject" value="Applied for ETL Developer">
					</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.bsrics.com/vacancy_1037303.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">Talend ETL Design and Development. - Data Integration, Data Quality and Metadata management/Governance.<br />
 ** Design and development of data ingestion pipelines.<br />
 ** Perform data migration and conversion activities.<br />
 ** Develop and integrate software applications using suitable development methodologies and standards, applying standard architectural patterns, taking into account critical performance characteristics and security measures.<br />
 ** Collaborate with Business Analysts, Architects and Senior Developers to establish the physical application framework (e.g. libraries, modules, execution environments).<br />
 ** Perform end to end automation of ETL process for various datasets that are being ingested into the big data platform.<br />
<br />
Must have a bachelor’s degree in Computer Science or related IT discipline.<br />
 * Must have at least 8 years of IT development experience.<br />
 * Must have 3+ years of experience developing in Talend or similar ETL toolset.<br />
 * Must have relevant professional experience working with big data toolsets.<br />
 * Knowledge of standard software development methodologies such as Agile and Waterfall<br />
Strong communication skills.<br />
 * Must be willing to flex work hours accordingly to support application launches and manage production outages if necessary.</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"> 5  Lac  To   20 Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Application Programming / Maintenance</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">ETL Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> HDFS</span>
												<span class="bdr dib p2px10px mr5px mt2px"> MapReduce</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Hadoop</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Hadoop Developer</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.S.Buvanesh</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Regus Business Centre, No.136, 3rd Floor, Shyamala Tower, Arcot Rd,</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9176376488 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:admin@bsrisolutions.com"> admin@bsrisolutions.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="696341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1037303"><input type="hidden" name="subject" value="Applied for ETL Developer">
					</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-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(17)</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>
									</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">(13)</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-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">(1)</span><a href="jobs-in-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</a></p>
										<p class="mb5px "><span class="fr">(1)</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">(1)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</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: 'RzlCNFUyK0hlSmEyekIwTjUrdXl5QT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:66:"Job openings for etl developer in chennai | BSRI Solutions Pvt Ltd";i:2;s:177:"ETL Developer Jobs,ETL Developer Jobs in Chennai,ETL Developer Vacancy in Chennai,ETL Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Chennai";i:3;s:315:"Apply for ETL Developer Jobs in Chennai India - ETL Developer Vacancy  in IT Software - Application Programming / Maintenance field with 8 to 14 years Work Experience, Key Skills are ETL Developer, HDFS, MapReduce, Hadoop, Hadoop Developer, IT Software - Application Programming / Maintenance jobs in Chennai  India";i:4;s:2512:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "ETL Developer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "1037303"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "9176376488",
	      "email" : "admin@bsrisolutions.com"  
	       },
		  "url": "http://www.bsrics.com/job-openings-for-etl-developer-chennai-1037303.htm",
          "datePosted": "2021-06-10",
          
		  "baseSalary": " 5  Lac  To   20 Lac ",
		  "description": "Talend ETL Design and Development. - Data Integration, Data Quality and Metadata management/Governance.
 ** Design and development of data ingestion pipelines.
 ** Perform data migration and conversion activities.
 ** Develop and integrate software applications using suitable development methodologies and standards, applying standard architectural patterns, taking into account critical performance characteristics and security measures.
 ** Collaborate with Business Analysts, Architects and Senior Developers to establish the physical application framework (e.g. libraries, modules, execution environments).
 ** Perform end to end automation of ETL process for various datasets that are being ingested into the big data platform.

Must have a bachelor’s degree in Computer Science or related IT discipline.
 * Must have at least 8 years of IT development experience.
 * Must have 3+ years of experience developing in Talend or similar ETL toolset.
 * Must have relevant professional experience working with big data toolsets.
 * Knowledge of standard software development methodologies such as Agile and Waterfall
Strong communication skills.
 * Must be willing to flex work hours accordingly to support application launches and manage production outages if necessary.",
		  "educationRequirements": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		  "experienceRequirements": "8 - 14 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Tamil Nadu",
		      "addressRegion": "Chennai"
		    }
		  },
		 "qualifications": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		     "skills": "ETL Developer, HDFS, MapReduce, Hadoop, Hadoop Developer"
		  }
		</script>
		";i:5;N;}