We are seeking an experienced Android Developer to join our Offshore Development Center in Lahore. The ideal candidate will be responsible for writing high-quality, maintainable, and testable code while implementing practical solutions for large features. This role involves designing custom native user interfaces using the latest Android programming techniques and developing applications compatible with a wide range of Android devices. Additionally, the candidate will provide mentorship and guidance to junior developers, ensuring adherence to best practices throughout the development lifecycle.
Key Responsibilities
- Write clean, idiomatic, and maintainable code that is easy to test and debug.
- Analyze complex features and deliver practical, efficient solutions.
- Develop custom native user interfaces using the latest Android development techniques.
- Conceptualize and design applications suitable for all Android device types.
- Provide technical guidance and support to junior developers, promoting knowledge sharing and adherence to current development standards.
Required Qualifications
- Minimum 4 to 6 years of experience in native Android mobile application development.
- Strong expertise in MVVM, Clean Architecture, and the Software Development Life Cycle (SDLC).
- Proficient in Kotlin, including coroutines, higher-order functions, and extension functions.
- Hands-on experience with ProGuard in multi-module projects.
- Experience with Test-Driven Development (TDD) using JUnit, Mockito, and/or Espresso.
- Familiarity with Android Jetpack components such as LiveData and Navigation.
- Skilled in programming and peer code reviews.
- Proficient in building user interfaces and animations using XML and custom UI components.
- Solid understanding of object-oriented programming and software design patterns like MVC, MVVM, and MVI.
- Experience with dependency injection frameworks, specifically Dagger Hilt.
- Knowledge of Android architecture components and database management systems such as SQLite, Realm, or ROOM.
- Experience integrating web services using REST, JSON, and XML.
- Proficient with version control systems, including Git and VSTS.
- Familiarity with Agile and Scrum methodologies.
Preferred Qualifications and Additional Skills
- Enthusiastic about artificial intelligence and eager to learn emerging technologies within the mobile development domain.
- Experience with additional Android libraries and tools such as RxJava, Retrofit, Glide, Jetpack Compose, ViewBinding, DataBinding, Firebase (including Realtime Database and FCM), and WorkManager.
- Knowledge of Xcode and Swift is a plus, though not mandatory.
- Exposure to VSTS code management is advantageous but not required.
This position offers the opportunity to work in a dynamic environment focused on innovation and continuous learning. Candidates who are passionate about mobile technology and committed to delivering high-quality software solutions will thrive in this role.