Role Overview
We are seeking a highly skilled Android Software Engineer with 5 to 15 years of experience to join our dynamic team. You will be responsible for developing high-quality mobile applications, ensuring seamless user experiences across a diverse range of Android devices. The ideal candidate blends deep technical expertise in Kotlin and the Android SDK with a strong product mindset, actively participating in the UI/UX design process to create intuitive and performant applications.
Key Responsibilities
- Design, build, and maintain high-performance, reusable, and reliable Kotlin code using the Android SDK.
- Collaborate with cross-functional teams (Product, Design, and Backend) to define, design, and ship new features.
- Work on UI implementation using XML layouts, ensuring compatibility across various screen sizes, densities, and device types.
- Implement robust data persistence using Room or SQLite and manage complex asynchronous tasks using Coroutines and Flows.
- Maintain high code quality through unit testing (JUnit), UI testing (Espresso), and following dependency injection patterns (Dagger/Dagger 2).
- Participate in the full product lifecycle, from low/high-fidelity prototyping to iterating on user interactions based on feedback loops and testing.
Requirements
- 5 to 15 years of full-time professional software engineering experience (candidates up to 20 years considered).
- Strong proficiency in Kotlin and the Android SDK.
- Extensive experience with XML layout configuration and multi-device compatibility.
- Expertise in Room/SQLite, Coroutines, Flows, and Dagger/Dagger 2.
- Solid understanding of testing frameworks including Espresso and JUnit.
- Experience in UI/UX prototyping and a passion for iterating on user-centric designs.
- A Bachelor’s degree in a STEM field (Science, Technology, Engineering, or Mathematics).
- Proven track record of career progression and stability; a history of consistent growth within organizations is preferred.