Description :
Position : Mobile Engineer (Android / Kotlin Specialist)
Experience : 3 - 6 Years
Location : Bangalore
Job Summary :
We are seeking a talented Mobile Engineer with 3 to 6 years of experience, possessing strong fundamentals in Android and Kotlin. This role is centered on developing high-quality, scalable, and maintainable mobile features while adhering to clean code practices. The successful candidate must be proficient in Coroutines and Jetpack Compose, have a solid understanding of modern software design patterns, and be prepared to take ownership of project initiatives and implement rigorous Test-Driven Development (TDD) practices.
Job Description :
Mobile Application Development and Architecture :
- Design and develop new, high-quality, scalable, and maintainable features for native Android applications using Kotlin as the primary programming language.
- Implement modern Android UI development using Jetpack Compose, ensuring a smooth, declarative, and highly responsive user experience across various device form factors.
- Leverage expert knowledge of Kotlin Coroutines and Flow to manage asynchronous operations, networking calls, and database transactions efficiently, ensuring optimal application performance.
- Apply solid understanding of software development principles, including Clean Architecture (e.g., MVVM, MVI), to structure code that is modular, testable, and maintainable.
- Ensure application performance optimization, focusing on memory management, battery consumption, and rendering speed to deliver a flawless user experience.
Engineering Quality and Project Ownership :
Mandatorily implement Test-Driven Development (TDD) practices, writing robust unit tests (e.g., JUnit, Mockito) and instrumented tests for all new features to ensure high code quality and prevent regressions.Advocate for and enforce clean code practices and established design patterns (e.g., Factory, Singleton, Observer) throughout the development lifecycle to ensure code clarity and evolution.Demonstrate demonstrated experience in leading project initiatives, taking technical ownership from concept to deployment, and proactively managing risks and dependencies.Utilize strong problem-solving skills to diagnose and resolve complex bugs and technical challenges within the application and its underlying architecture.Collaboration and Team Environment :
Work effectively in a collaborative team environment, participating in daily stand-ups, technical design discussions, and performing thorough code reviews to maintain quality standards.Collaborate closely with cross-functional teams, including Product Managers, UX / UI designers, and Backend Engineers, to accurately translate requirements into technical specifications and successful project outcomes.Contribute to the continuous improvement of the mobile development process, documentation, and overall engineering standards.Required Skills & Qualifications :
Experience : Mandatory 3 - 6 years of relevant experience in mobile application development.Core Mobile : Proficient in Kotlin and experienced in native Android app development.Modern Android : Strong knowledge and hands-on experience with Coroutines (or RxJava / Flow) and modern declarative UI using Jetpack Compose.Engineering Principles : Solid understanding of software development principles, clean code practices, and design patterns (e.g., MVVM).Leadership : Demonstrated experience in leading and taking ownership of project initiatives.Core Skills : Strong problem-solving skills and ability to work effectively in a collaborative team environment.Practices : Experience implementing Test-Driven Development (TDD).Preferred Skills :
Build / CI / CD : Experience with CI / CD tools for mobile (e.g., GitLab CI, Jenkins, Bitrise) and proficiency with Gradle for build management.Dependency Injection : Experience with dependency injection frameworks (e.g., Dagger Hilt, Koin).Database : Experience with local persistence libraries (e.g., Room Database) and secure data storage best practices.Testing Frameworks : Experience with advanced testing frameworks like Espresso or UI Automator.Modularization : Experience designing and refactoring applications using a multi-module approach.(ref : hirist.tech)