a:6:{i:0;s:10145:"				<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 senior app developer react in bangalore</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.adihrconsulting.com/">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 senior app developer react in bangalore</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Senior App Developer (React)</div>
									<p class="mt7px fw6">Bangalore</p>
									
				<br>
				<p class="aj mt7px">Job Description<br />
SWINK, is an Open loop, interoperable mobile based solution that aims to enhance Digital Payments by enabling “Cashless Payments”.<br />
<br />
SwinkPay Fintech Private Limited is part of SignApp Technology Pte. Ltd. (SignApp) - a Singapore based Payments Company with Payments, Merchant Acquiring & Remittance products. SWINK is a Fast growing Fin-Tech product aimed at developing economies like India, South East Asia, Africa and Middle East. Swink is accredited with MasterCard, Visa and RuPay.<br />
<br />
Located in Bengaluru<br />
Looking for an experienced React Native developer with a solid command of the React.js language and experience in various React projects.<br />
<br />
The key requirements:<br />
<br />
Proficiency in coding with JavaScript including components, application logic, services, structure, and flow.<br />
The developer must be well versed with all key React assumptions such as JSX, Virtual DOM, and life cycle of the components.<br />
The developer must have enough experience in working on iOS and Android app projects and should have a clear idea about the key constraints and attributes of these two platforms.<br />
The developer should be well versed with some other frequently used tech tools such as Redux, Hockeyapp, and Enzyme.<br />
Last but not least of all required skills is the team-playing personality and communication skills<br />
Additional Information<br />
 <br />
Location: Bengaluru (Sanjay Nagar Main Road, Bengaluru, Bengaluru (Bangalore) Urban, Karnataka, 560094)<br />
Candidates must be keen to work in a startup environment<br />
Immediate/ early joiners are highly preferred<br />
Temporarily Remote working. All employees will work from Bangalore office subsequently on a permanent basis.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">3 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To  15  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</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">JavaScript</span>
												<span class="bdr dib p2px10px mr5px mt2px"> JSX</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Virtual DOM</span>
												<span class="bdr dib p2px10px mr5px mt2px"> ios development</span>
												<span class="bdr dib p2px10px mr5px mt2px"> android app development</span>
												<span class="bdr dib p2px10px mr5px mt2px"> React Native Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> React JS Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> App 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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">SwinkPay Fintech Private Limited</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">SignApp Technology Pte. Ltd. (SignApp) is a Singapore based Payments Company with Payments, Merchant Acquiring and Remittance products. SignApp’s flagship product, SWINK, is an Open loop, interoperable mobile based solution that aims to enhance Digital Payments by enabling “Cashless Payments” with nil / minimal upfront investment. Our target market of interest are developing economies where the Governments are focused on promoting digital payments such as, India, South East Asia, Africa and Middle East coupled with a high use of smart phone penetration. Swink is accredited with MasterCard, Visa and RuPay and has the ability to use any MasterCard / VISA / RuPay card with a 16 digit card number anywhere in the world, in any base currency.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Team ADI 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="996196"><input type="hidden" name="subject" value="Applied for Senior App Developer (React)">
					</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-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-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<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">(2)</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">(1)</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>
										<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">(3)</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-system-programming-fid.htm" title="IT Software - System Programming Jobs">IT Software - System Programmi...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-financial-services-banking-investments-insurance-stock-market-loan-fid.htm" title="Financial Services / Banking, Investments / Insurance / stock market / Loan Jobs">Financial Services / Banking, ...</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: 'eU9qZW80Yi9tK2pVWW5BdnIrQm1SQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:78:"Job openings for senior app developer react in bangalore | ADI HR & Consulting";i:2;s:243:"Senior App Developer (React) Jobs,Senior App Developer (React) Jobs in Bangalore,Senior App Developer (React) Vacancy in Bangalore,Senior App Developer (React) jobs in India,IT Software - Application Programming / Maintenance jobs in Bangalore";i:3;s:421:"Apply for Senior App Developer (React) Jobs in Bangalore India - Senior App Developer (React) Vacancy  in IT Software - Application Programming / Maintenance field with 3 to 8 years Work Experience, Key Skills are JavaScript, JSX, Virtual DOM, ios development, android app development, React Native Developer, React JS Developer, App Developer, IT Software - Application Programming / Maintenance jobs in Bangalore  India";i:4;s:3761:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior App Developer (React)",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "SwinkPay Fintech Private Limited",
	        "value":  "996196"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "SwinkPay Fintech Private Limited",
	      "description": "SignApp Technology Pte. Ltd. (SignApp) is a Singapore based Payments Company with Payments, Merchant Acquiring and Remittance products. SignApp’s flagship product, SWINK, is an Open loop, interoperable mobile based solution that aims to enhance Digital Payments by enabling “Cashless Payments” with nil / minimal upfront investment. Our target market of interest are developing economies where the Governments are focused on promoting digital payments such as, India, South East Asia, Africa and Middle East coupled with a high use of smart phone penetration. Swink is accredited with MasterCard, Visa and RuPay and has the ability to use any MasterCard / VISA / RuPay card with a 16 digit card number anywhere in the world, in any base currency.",
	      "telephone" : "9038885888",
	      "email" : "hiring@adihrconsulting.com"  
	       },
		  "url": "https://www.adihrconsulting.com/job-openings-for-senior-app-developer-react-bangalore-996196.htm",
          "datePosted": "2020-07-27",
          
		  "baseSalary": " 10  Lac  To  15  Lac ",
		  "description": "Job Description
SWINK, is an Open loop, interoperable mobile based solution that aims to enhance Digital Payments by enabling “Cashless Payments”.

SwinkPay Fintech Private Limited is part of SignApp Technology Pte. Ltd. (SignApp) - a Singapore based Payments Company with Payments, Merchant Acquiring & Remittance products. SWINK is a Fast growing Fin-Tech product aimed at developing economies like India, South East Asia, Africa and Middle East. Swink is accredited with MasterCard, Visa and RuPay.

Located in Bengaluru
Looking for an experienced React Native developer with a solid command of the React.js language and experience in various React projects.

The key requirements:

Proficiency in coding with JavaScript including components, application logic, services, structure, and flow.
The developer must be well versed with all key React assumptions such as JSX, Virtual DOM, and life cycle of the components.
The developer must have enough experience in working on iOS and Android app projects and should have a clear idea about the key constraints and attributes of these two platforms.
The developer should be well versed with some other frequently used tech tools such as Redux, Hockeyapp, and Enzyme.
Last but not least of all required skills is the team-playing personality and communication skills
Additional Information
 
Location: Bengaluru (Sanjay Nagar Main Road, Bengaluru, Bengaluru (Bangalore) Urban, Karnataka, 560094)
Candidates must be keen to work in a startup environment
Immediate/ early joiners are highly preferred
Temporarily Remote working. All employees will work from Bangalore office subsequently on a permanent basis.",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "3 - 8 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka",
		      "addressRegion": "Bangalore"
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "JavaScript, JSX, Virtual DOM, ios development, android app development, React Native Developer, React JS Developer, App Developer"
		  }
		</script>
		";i:5;N;}