We are seeking a highly skilled and experienced Senior Software Engineer who work for Android Operating System to join our mobile engineering team. You will play a key role in the development, optimisation, and maintenance of our Android applications. The ideal candidate will is technically strong, proactive, and able to take ownership of complex components.
Job Responsibilities
- Design, build and maintain high-performance, reusable, and reliable Kotlin/Java code
- Collaborate with cross-functional teams to define, design, and ship new features
- Ensure the best possible performance, quality, and responsiveness of the app
- Identify and correct bottlenecks and fix bugs
- Work closely with UI/UX teams and backend developers to integrate APIs
- Participate in code reviews and provide constructive feedback
- Implement modern Android architectural patterns (MVVM, Clean Architecture)
- Advocate and implement best practices in mobile development
- Maintain security, scalability, and maintainability standards
- Proactively identify test gaps and improve testing efficiency across modules
- Ensure timely delivery of projects while maintaining high standards of quality and performance
Job Requirement
- Bachelor’s degree in Computer Science, Engineering, or related field
- 4+ years of experience in Android development with strong Kotlin proficiency
- Proven experience implementing unit tests, mocking frameworks (e.g., Mockito, MockK), and local test runners (e.g., Robolectric)
- Comfortable with test-driven development (TDD) or writing testable code
- Familiar with Retrofit, Coroutines, Room, LiveData, Jetpack Compose
- Experience with Git, Jira, and modern CI tools (e.g., Bitrise)
- Familiarity with cloud message APIs and push notifications
- Experience with test coverage tools like JaCoCo or SonarQube
- Experience with analytics, crash reporting tools (e.g., Firebase, Sentry)
- Exposure to dependency injection tools (e.g., Hilt, Koin)
- Experience with Google Play Console and publishing Android apps
- Experience working in Agile/Scrum teams
- Experience using AI-assisted development tools (e.g., Copilot, ChatGPT, IntelliJ AI Tools, etc.) to enhance productivity and code quality
- Experience working with microservices-based architectures and integrating with backend systems