About the role
Our Android developers have a passion to push mobile technologies to the limits. As an Android Developer, you work with our team of talented engineers to design and build the next generation mobile applications in a scalable manner.
- Design and build advanced scalable applications for the Android platform.
- Work with the product and design teams to understand the end user requirements and use cases and translate them pragmatic and effective technical solutions.
- Integrate with our backend services (JSON, REST, etc.) to make sure we are delivering a great mobile user experience that is super fast for end users
- Own end-t-end product modules/features from requirement to going live.
- Design and review code, troubleshoot and act as a consultant to team members on technical matters.
- Gather requirements by interacting directly with the end users and advocate delightful user experience.
- Continuously discover, evaluate and implement new technologies to maximize development efficiency.
- Unit test code for robustness, including edge cases, usability and general reliability.
- Use core animation to create engaging motion effects and intuitive interfaces.
- 3+ years of software programming experience.
3+ years of Android application development, with extensive knowledge about Java, collections, algorithms and well-known application frameworks.
Strong understanding of interactive application development paradigm under Android, memory management, file I/O, network programming, concurrency and multithreading.
Experience in Android-specific application development and publishing Android apps in the play store.
- Good understanding of design patterns, such as builder, facade and Observer.
- Good knowledge about the latest framework and technics, including RxAndroid, Lambda expressions and dependency injection.
Good understanding of the full mobile development life cycle. Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies.
- Experience in working with third-party libraries and APIs.
- Good experience on testing frameworks, including Robolectric and Espresso.
- Strong and innovative approach to problem solving and finding solutions. Flexible and proactive/self-motivated working style with strong personal ownership of problem resolution.
- Excellent communicator (written and verbal, formal and informal).
- Highly accountable and takes ownership, with collaborative attitude, and a lifelong learner.