a:6:{i:0;s:8770:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for team lead andriod ios in bhopal</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.a-square.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.a-square.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for team lead andriod ios in bhopal</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">Team Lead Andriod/iOS</div>
									<p class="mt7px fw6">Bhopal</p>
									
				<br>
				<p class="aj mt7px">Job description<br />
Responsibilities:<br />
•	Lead the development of iOS and/or Android apps .<br />
•	You have a very good analytical ability to attack problems that are very unusual and extremely difficult, comfortable with ambiguity<br />
•	You have highly developed oral and written communication skills<br />
•	Use your knowledge of server-side technology to architect applications or data to build scalable, high-performing technology solutions<br />
•	Write technical documentation used by the development team during programming stages.<br />
<br />
Experience & Skills:<br />
•	5-7 years of mobile application development experience with at least two apps that are on the app store that you are proud to discuss with us.<br />
•	Expertise in You are proficient with the languages, tools, and frameworks core to iOS or Android development (or both), including XCode, Android Studio, Swift/SwiftUI, Java/ Kotlin, React Native, etc.<br />
•	Strong understating understanding of single responsibility principle  <br />
•	Understanding on  hybrid app frameworks like Ionic / React Native/ Phone Gap<br />
•	Good knowledge and experience on RESTful APIs<br />
•	Good understanding on Design Principles<br />
•	Strong understanding of algorithms and data structures<br />
•	Strong knowledge in Version Control<br />
•	Good Communication skill.<br />
About us:<br />
We are building an application which will serve health and wellness related services to the users. Main goal is to reduce many manual efforts by adopting automation of process which will reduce the cost of services to the end user.<br />
Our company is a well-established group for 20 years having multiple verticals of businesses.</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">Not Disclosed</td>
					</tr>
									
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Client Server</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Professional Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">iOS developer</span>
												<span class="bdr dib p2px10px mr5px mt2px">Android Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px">RESTful</span>
												<span class="bdr dib p2px10px mr5px mt2px">single responsibility principle</span>
												<span class="bdr dib p2px10px mr5px mt2px">hybrid app frameworks</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">Client</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Client</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">JTA</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9899393951 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:amit@a-square.co.in"> amit@a-square.co.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="341034">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="985622"><input type="hidden" name="subject" value="Applied for Team Lead Andriod/iOS">
					</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">(7)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bhopal.htm" title="Jobs in Bhopal">Bhopal</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-noida.htm" title="Jobs in Noida">Noida</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">(2)</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-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</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: 'ZGFQVGNUV3R1bGtFRmM0ZGhKWVR0QT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:82:"Job openings for team lead andriod ios in bhopal | A Square Technologies Pvt. Ltd.";i:2;s:182:"Team Lead Andriod/iOS Jobs,Team Lead Andriod/iOS Jobs in Bhopal,Team Lead Andriod/iOS Vacancy in Bhopal,Team Lead Andriod/iOS jobs in India,IT Software - Client Server jobs in Bhopal";i:3;s:318:"Apply for Team Lead Andriod/iOS Jobs in Bhopal India - Team Lead Andriod/iOS Vacancy  in IT Software - Client Server field with 8 to 14 years Work Experience, Key Skills are iOS developer,Android Developer,RESTful,single responsibility principle,hybrid app frameworks, IT Software - Client Server jobs in Bhopal  India";i:4;s:2337:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Team Lead Andriod/iOS",
		  "baseSalary": "",
		  "description": "Job description
Responsibilities:
•	Lead the development of iOS and/or Android apps .
•	You have a very good analytical ability to attack problems that are very unusual and extremely difficult, comfortable with ambiguity
•	You have highly developed oral and written communication skills
•	Use your knowledge of server-side technology to architect applications or data to build scalable, high-performing technology solutions
•	Write technical documentation used by the development team during programming stages.

Experience & Skills:
•	5-7 years of mobile application development experience with at least two apps that are on the app store that you are proud to discuss with us.
•	Expertise in You are proficient with the languages, tools, and frameworks core to iOS or Android development (or both), including XCode, Android Studio, Swift/SwiftUI, Java/ Kotlin, React Native, etc.
•	Strong understating understanding of single responsibility principle  
•	Understanding on  hybrid app frameworks like Ionic / React Native/ Phone Gap
•	Good knowledge and experience on RESTful APIs
•	Good understanding on Design Principles
•	Strong understanding of algorithms and data structures
•	Strong knowledge in Version Control
•	Good Communication skill.
About us:
We are building an application which will serve health and wellness related services to the users. Main goal is to reduce many manual efforts by adopting automation of process which will reduce the cost of services to the end user.
Our company is a well-established group for 20 years having multiple verticals of businesses.",
		  "educationRequirements": "Professional Degree",
		  "experienceRequirements": "8 - 14 Years",
		  "industry": "IT Software - Client Server",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Madhya Pradesh",
		      "addressRegion": "Bhopal"
		    }
		  },
		 "qualifications": "Professional Degree",
		     "skills": "iOS developer,Android Developer,RESTful,single responsibility principle,hybrid app frameworks"
		  }
		</script>
		";i:5;N;}