Job Description for Android Native Developer
- Experience Required: 3+ Years
- Job Location: Mumbai
Description:
We are searching for a seasoned Android Native Developer with a minimum of 3+ years of hands-on experience. The ideal candidate will have an in-depth knowledge of Android native development, a passion for pushing mobile technologies to the limits, and a penchant for collaborative problem-solving.
SKILLS AND EXPERIENCE:
- 3+ years of professional experience with Android native development (Java/Kotlin).
- Proven experience of published Android apps.
- A deep familiarity with Android Studio, Gradle, and other essential tools.
- Experience with 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.
- Solid understanding of Android’s design principles and interface guidelines.
- Proficient understanding of code versioning tools, such as Git.
- Experience with performance and memory tuning tools.
- Knowledge of other web technologies and UI/UX standards.
- Experience with offline storage, threading, and performance tuning.
- Understanding of Android’s back-end services, and familiarity with cloud message APIs and push notifications.
- Experience with continuous integration.
- Familiarity with the Android ecosystem and its libraries (Retrofit, Room, etc.).
- Experience with TDD and writing unit tests using tools like JUnit and Mockito.
- Good problem-solving skills and a proactive attitude.
- Strong communication skills to effectively collaborate with designers, developers, and other team members.
- The ability to understand business requirements and translate them into technical requirements.
- A knack for benchmarking and optimization.
RESPONSIBILITIES:
- Design and build advanced applications for the Android platform using native tools and frameworks.
- Collaborate with cross-functional teams to define, design, and ship new features.
- Work with third-party data sources and APIs.
- Unit-test code for robustness, usability, and general reliability.
- Ensure the performance, quality, and responsiveness of applications.
- Troubleshoot and debug to optimize performance.
- Collaborate with the design team to define app features.
- Ensure code quality, organizational programming techniques, and best practices.
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency.