a:6:{i:0;s:9957:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Job openings for lead full stack engineer in delhi</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.adihrconsulting.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.adihrconsulting.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for lead full stack engineer in delhi</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<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">Lead Full Stack Engineer</div>
									<p class="mt7px fw6">Delhi</p>
									
				<br>
				<p class="aj mt7px">REQUIRED SKILLS AND EXPERIENCE-<br />
<br />
7+ years experience in Java and J2EE application development in a web/mobile environment.<br />
Minimum 5 years of experience of Architecture and Design experience in Microservices platform with Springboot framework is a must.<br />
Minimum 3 years of experience as Technical Lead.<br />
Minimum 2 years of experience working with Kafka.<br />
Minimum 2 years of experience in ReactJS and other Javascript libraries.<br />
Strong expertise of Restful API and API Gateway/ Spring Gateway Framework.<br />
Good knowledge and experience in SQL Databases such as Oracle or SQL Server.<br />
Good knowledge and experience in NO-SQL Databases such as postgresql or neo4j.<br />
Strong expertise in Core Java and its Collections.<br />
Good understanding of Object Oriented analysis and design using common design patterns. Understanding of SSO concepts.<br />
Expertise/experience in designing and developing a multi-tier (App/ Web/ DB) server architecture.<br />
Experience with agile development, scrum or extreme programming methodologies.<br />
 <br />
<br />
GOOD TO HAVE-<br />
<br />
Candidates with start-up experience will be preferred.<br />
Version control: Experience administrating version control systems such as Apache Subversion (SVN), GIT etc.<br />
Understanding network topologies and common network protocols and services- Domain Name System (DNS), HTTP (S), Secure Shell (SSH), File Transfer Protocol (FTP).<br />
Security- Experience in building encrypted data store, preferably Vault.<br />
 <br />
<br />
ADDITIONAL REQUIREMENTS-<br />
<br />
Professional commitment to high quality and a passion for learning new skills.<br />
Detail-oriented individual with the ability to rapidly learn new concepts and technologies.<br />
Strong problem solving skills, including providing simple solutions to complex situations.<br />
Must be a strong team player with the ability to communicate and collaborate.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">5 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To  14  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.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">Java</span>
												<span class="bdr dib p2px10px mr5px mt2px"> J2EE</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Springboot</span>
												<span class="bdr dib p2px10px mr5px mt2px"> ReactJs</span>
												<span class="bdr dib p2px10px mr5px mt2px"> SQL</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Full Stack Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Java Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> JQuery</span>
												<span class="bdr dib p2px10px mr5px mt2px"> software development</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">Scientia Solutions Private Limited</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">The Company is promoted by an experienced and successful entrepreneur. This is new venture in Mobile application and is self funded. Founded in Mar 2019, Scientia, a startup is promoted by experienced & successful Entrepreneur, in cutting edge technologies to create a product/app which is universally used by across the society, irrespective of language. Based out of Delhi, Scientia is developing its core team of creative, enthusiastic, passionate Engineers and Developers to build a strong customer focused organization. The founders have varied experience in building successful scalable organization.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">HR</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9038885888 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:hiring@adihrconsulting.com"> hiring@adihrconsulting.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="754737">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="932910"><input type="hidden" name="subject" value="Applied for Lead Full Stack Engineer">
					</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-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-kochi.htm" title="Jobs in Kochi">Kochi</a> <b class="alpha50 bn small">(2)</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>
										<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">(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">(5)</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-erp-crm-edp-software-fid.htm" title="IT Software- ERP / CRM / EDP / MIS Jobs">IT Software- ERP / CRM / EDP /...</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>
										<p class="mb5px "><span class="fr">(1)</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>
									
				</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: 'WHFNYkhib0RYdUxVVkEvclYwZko5UT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:72:"Job openings for lead full stack engineer in delhi | ADI HR & Consulting";i:2;s:215:"Lead Full Stack Engineer Jobs,Lead Full Stack Engineer Jobs in Delhi,Lead Full Stack Engineer Vacancy in Delhi,Lead Full Stack Engineer jobs in India,IT Software - Application Programming / Maintenance jobs in Delhi";i:3;s:380:"Apply for Lead Full Stack Engineer Jobs in Delhi India - Lead Full Stack Engineer Vacancy  in IT Software - Application Programming / Maintenance field with 5 to 8 years Work Experience, Key Skills are Java, J2EE, Springboot, ReactJs, SQL, Full Stack Developer, Java Developer, JQuery, software development, IT Software - Application Programming / Maintenance jobs in Delhi  India";i:4;s:2567:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Lead Full Stack Engineer",
		  "baseSalary": " 10  Lac  To  14  Lac ",
		  "description": "REQUIRED SKILLS AND EXPERIENCE-

7+ years experience in Java and J2EE application development in a web/mobile environment.
Minimum 5 years of experience of Architecture and Design experience in Microservices platform with Springboot framework is a must.
Minimum 3 years of experience as Technical Lead.
Minimum 2 years of experience working with Kafka.
Minimum 2 years of experience in ReactJS and other Javascript libraries.
Strong expertise of Restful API and API Gateway/ Spring Gateway Framework.
Good knowledge and experience in SQL Databases such as Oracle or SQL Server.
Good knowledge and experience in NO-SQL Databases such as postgresql or neo4j.
Strong expertise in Core Java and its Collections.
Good understanding of Object Oriented analysis and design using common design patterns. Understanding of SSO concepts.
Expertise/experience in designing and developing a multi-tier (App/ Web/ DB) server architecture.
Experience with agile development, scrum or extreme programming methodologies.
 

GOOD TO HAVE-

Candidates with start-up experience will be preferred.
Version control: Experience administrating version control systems such as Apache Subversion (SVN), GIT etc.
Understanding network topologies and common network protocols and services- Domain Name System (DNS), HTTP (S), Secure Shell (SSH), File Transfer Protocol (FTP).
Security- Experience in building encrypted data store, preferably Vault.
 

ADDITIONAL REQUIREMENTS-

Professional commitment to high quality and a passion for learning new skills.
Detail-oriented individual with the ability to rapidly learn new concepts and technologies.
Strong problem solving skills, including providing simple solutions to complex situations.
Must be a strong team player with the ability to communicate and collaborate.",
		  "educationRequirements": "B.Tech/B.E, M.Tech",
		  "experienceRequirements": "5 - 8 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR",
		      "addressRegion": "Delhi"
		    }
		  },
		 "qualifications": "B.Tech/B.E, M.Tech",
		     "skills": "Java, J2EE, Springboot, ReactJs, SQL, Full Stack Developer, Java Developer, JQuery, software development"
		  }
		</script>
		";i:5;N;}