a:6:{i:0;s:8569:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for senior hadoop developer in chennai</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.bsrics.com/" title="Home">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 senior hadoop developer in chennai</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">Senior Hadoop Developer</div>
									<p class="mt7px fw6">Chennai</p>
									
				<br>
				<p class="aj mt7px">The Hadoop Developer position will provide expertise in a wide range of technical areas, including but not limited to: Cloudera Hadoop ecosystem, Java, collaboration toolsets integration using SSO, configuration management, hardware and software configuration and tuning, software design and development, and application of new technologies and languages that are aligned with other client internal projects. <br />
1. Design and development of data ingestion pipelines.<br />
2. Perform data migration and conversion activities.<br />
3. 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 />
4. Collaborate with Business Analysts, Architects and Senior Developers to establish the physical application framework (e.g. libraries, modules, execution environments).<br />
5. Perform end to end automation of ETL process for various datasets that are being ingested into the big data platform.<br />
Required:<br />
<br />
1. Hadoop (Cloudera (CDH)) , HDFS, Hive, Impala, Spark, Oozie, HBase<br />
2. SCALA <br />
3. SQL<br />
4. Linux<br />
5. JSON<br />
6. Python, Perl<br />
Good to Have:<br />
7. Strong Database Design Skills<br />
8. ETL Tools<br />
9. NoSQL databases (Mongo, Couchbase, Cassandra)<br />
10. Good understanding and working knowledge of Agile development<br />
1.	Lead technical design sessions, suggest best solution options per industry standards <br />
2.	Document and maintain project artifacts.<br />
2. Suggest best practices, and implementation strategies using Hadoop, Java, ETL tools.<br />
3. Maintain comprehensive knowledge of industry standards, methodologies, processes, and best practices.<br />
4. Other duties as assigned.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">5 - 11 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 5  Lac  50 Thousand  To  18  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">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Hadoop Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Hadoop Development</span>
												<span class="bdr dib p2px10px mr5px mt2px"> JSON</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Python Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Java Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"></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="955142"><input type="hidden" name="subject" value="Applied for Senior Hadoop 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">(7)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(7)</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">(9)</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-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-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-journalism-media-publishing-fid.htm" title="Content Writing / Journalism / Editing Jobs">Content Writing / Journalism /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</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: 'U1dmZHV6MU8vaFRjUmZJYlNQdUgrZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:76:"Job openings for senior hadoop developer in chennai | BSRI Solutions Pvt Ltd";i:2;s:217:"Senior Hadoop Developer Jobs,Senior Hadoop Developer Jobs in Chennai,Senior Hadoop Developer Vacancy in Chennai,Senior Hadoop Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Chennai";i:3;s:356:"Apply for Senior Hadoop Developer Jobs in Chennai India - Senior Hadoop Developer Vacancy  in IT Software - Application Programming / Maintenance field with 5 to 11 years Work Experience, Key Skills are Hadoop Developer, Hadoop Development, JSON, Python Developer, Java Developer,, IT Software - Application Programming / Maintenance jobs in Chennai  India";i:4;s:2424:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior Hadoop Developer",
		  "baseSalary": " 5  Lac  50 Thousand  To  18  Lac ",
		  "description": "The Hadoop Developer position will provide expertise in a wide range of technical areas, including but not limited to: Cloudera Hadoop ecosystem, Java, collaboration toolsets integration using SSO, configuration management, hardware and software configuration and tuning, software design and development, and application of new technologies and languages that are aligned with other client internal projects. 
1. Design and development of data ingestion pipelines.
2. Perform data migration and conversion activities.
3. Develop and integrate software applications using suitable development methodologies and standards, applying standard architectural patterns, taking into account critical performance characteristics and security measures.
4. Collaborate with Business Analysts, Architects and Senior Developers to establish the physical application framework (e.g. libraries, modules, execution environments).
5. Perform end to end automation of ETL process for various datasets that are being ingested into the big data platform.
Required:

1. Hadoop (Cloudera (CDH)) , HDFS, Hive, Impala, Spark, Oozie, HBase
2. SCALA 
3. SQL
4. Linux
5. JSON
6. Python, Perl
Good to Have:
7. Strong Database Design Skills
8. ETL Tools
9. NoSQL databases (Mongo, Couchbase, Cassandra)
10. Good understanding and working knowledge of Agile development
1.	Lead technical design sessions, suggest best solution options per industry standards 
2.	Document and maintain project artifacts.
2. Suggest best practices, and implementation strategies using Hadoop, Java, ETL tools.
3. Maintain comprehensive knowledge of industry standards, methodologies, processes, and best practices.
4. Other duties as assigned.",
		  "educationRequirements": "",
		  "experienceRequirements": "5 - 11 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Tamil Nadu",
		      "addressRegion": "Chennai"
		    }
		  },
		 "qualifications": "",
		     "skills": "Hadoop Developer, Hadoop Development, JSON, Python Developer, Java Developer,"
		  }
		</script>
		";i:5;N;}