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 API’s
· 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 efficieny.
Requirements:
· Proven software development experience
· 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 REST 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”
· Experience with mobile device sensors (Accelerometer, barometer, gyroscope, digital compass, and GPS)
· Ability to understand business requirements and translate them into technical requirements
· Familiarity with cloud message APIs and push notifications
· Experience with third-party libraries and APIs
· Understanding of Google’s Android design principles and interface guidelines
· Proficient understanding of code versioning tools, such as Git
· Familiarity with continuous integration