a:6:{i:0;s:8888:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for sr full stack developer in bangalore</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.ayirushr.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.ayirushr.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for sr full stack developer in bangalore</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">Sr.Full Stack Developer - Bangalore</div>
									<p class="mt7px fw6">Bangalore</p>
									
				<br>
				<p class="aj mt7px">•	Degree in Computer Science.<br />
•	Strong organizational and project management skills.<br />
•	Proficiency with fundamental front end languages such as HTML, CSS and JavaScript.<br />
•	Experience with JavaScript frameworks such as Angular, React.<br />
•	Proficiency with server side languages such as Python, Core Java, Java spring boot, Hibernate.<br />
•	Must have knowledge in Cloud platforms like AWS. Having a AWS developer certification is good to have.<br />
•	Experience with database technology such as MySQL, PostgreSQL and MongoDB.<br />
•	Excellent verbal communication skills.<br />
•	Good problem-solving skills<br />
<br />
NOTE:<br />
* 2 Years of Experience is mandatory in Angular<br />
* We need candidates only from premium institutes</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">3 - 4 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 6  Lac  To  7  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">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Java script framework</span>
												<span class="bdr dib p2px10px mr5px mt2px">Angular</span>
												<span class="bdr dib p2px10px mr5px mt2px">Python developer</span>
												<span class="bdr dib p2px10px mr5px mt2px">HTML</span>
												<span class="bdr dib p2px10px mr5px mt2px">CSS</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>
												<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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Our Client</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Our Client is a well-established software services company with the mission of providing high end technology services. The company was founded in 2009 by alumni of IIT Bombay. 

Our Client provides outsource engineering services for building the next internet idea - web applications and mobile applications using core technologies such as Android, IOS, Angular JS, Node JS, Java, PHP,  and open source frameworks such as Spring, Hibernate, Lucene, Jasper and many more. 

Presence: The Company is headquartered in HSR Layout, Bengaluru. And also cater to servicing at various client locations across the country.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Suriya B A Narayan</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">MIGH 84, Rajashekara Enclave, Dharmareddy Colony II, Hydernagar</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9121006969 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:recruitments@ayirushr.in"> recruitments@ayirushr.in </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="875267">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="921961"><input type="hidden" name="subject" value="Applied for Sr.Full Stack Developer - Bangalore">
					</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-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(14)</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">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(4)</b></span>
										<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">(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">(20)</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-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</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-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</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: 'Mm4yY3ZhV08rSWNLTWRVSU52YWlOUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:74:"Job openings for sr full stack developer in bangalore | ayiruS HR Services";i:2;s:271:"Sr.Full Stack Developer - Bangalore Jobs,Sr.Full Stack Developer - Bangalore Jobs in Bangalore,Sr.Full Stack Developer - Bangalore Vacancy in Bangalore,Sr.Full Stack Developer - Bangalore jobs in India,IT Software - Application Programming / Maintenance jobs in Bangalore";i:3;s:426:"Apply for Sr.Full Stack Developer - Bangalore Jobs in Bangalore India - Sr.Full Stack Developer - Bangalore Vacancy  in IT Software - Application Programming / Maintenance field with 3 to 4 years Work Experience, Key Skills are Java script framework,Angular,Python developer,HTML,CSS,Full Stack Developer,Java Developer,JQuery,software development,, IT Software - Application Programming / Maintenance jobs in Bangalore  India";i:4;s:2631:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sr.Full Stack Developer - Bangalore",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Our Client",
	        "value":  "921961"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Our Client",
	      "description": "Our Client is a well-established software services company with the mission of providing high end technology services. The company was founded in 2009 by alumni of IIT Bombay. 

Our Client provides outsource engineering services for building the next internet idea - web applications and mobile applications using core technologies such as Android, IOS, Angular JS, Node JS, Java, PHP,  and open source frameworks such as Spring, Hibernate, Lucene, Jasper and many more. 

Presence: The Company is headquartered in HSR Layout, Bengaluru. And also cater to servicing at various client locations across the country.",
	      "telephone" : "9121006969",
	      "email" : "recruitments@ayirushr.in"  
	       },
		  "url": "http://www.ayirushr.co.in/job-openings-for-sr-full-stack-developer-bangalore-921961.htm",
          "datePosted": "2021-06-05",
          
		  "baseSalary": " 6  Lac  To  7  Lac ",
		  "description": "•	Degree in Computer Science.
•	Strong organizational and project management skills.
•	Proficiency with fundamental front end languages such as HTML, CSS and JavaScript.
•	Experience with JavaScript frameworks such as Angular, React.
•	Proficiency with server side languages such as Python, Core Java, Java spring boot, Hibernate.
•	Must have knowledge in Cloud platforms like AWS. Having a AWS developer certification is good to have.
•	Experience with database technology such as MySQL, PostgreSQL and MongoDB.
•	Excellent verbal communication skills.
•	Good problem-solving skills

NOTE:
* 2 Years of Experience is mandatory in Angular
* We need candidates only from premium institutes",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "3 - 4 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka",
		      "addressRegion": "Bangalore"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Java script framework,Angular,Python developer,HTML,CSS,Full Stack Developer,Java Developer,JQuery,software development,"
		  }
		</script>
		";i:5;N;}