Job purpose: A mobile application developer to lead the design, development and maintenance of Android/ iPhone apps and cross platform apps. The developer will lead the entire app lifecycle right from concept stage until delivery and post launch support.

4 to 7 years of experience with mobile application development.

Proven software development experience

Proven working experience in Android development

Have a Good knowledge of geographic information system (GIS) and Global Positioning System (GPS).
Have published at least one original Android app
Experience with Android SDK
Experience working with remote data via REST and JSON
Experience with third-party libraries and APIs
Working knowledge of the general mobile landscape, architectures,trends, and emerging technologies
Solid understanding of the full mobile development life cycle. 
Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes
Familiarity with RESTful APIs to connect Android applications to back-end services
Strong knowledge of Android UI design principles, patterns, and best practices
Experience with offline storage, threading, and performance tuning 

Ability to design applications around natural user interfaces, such as touch

Familiarity with the use of additional sensors, such as gyroscopes and accelerometers

Knowledge of the open-source Android ecosystem and the libraries available for common tasks

Ability to understand business requirements and translate them into technical requirements

Familiarity with cloud message APIs and push notifications

A knack for benchmarking and optimization

Understanding of Googles Android design principles and interface guidelines

Proficient understanding of code versioning tools, such as Git


Familiarity with continuous integration

Responsibilities:-

Design and build advanced applications for the Android platform.

Collaborate with cross-functional teams to define, design, and ship new features.

Work with outside data sources and APIs

Unit-test code for robustness, including edge cases, usability, and general reliability.

Work on bug fixing and improving application performance.

Continuously discover, evaluate, and implement new technologies to maximize development efficiency.