Tech Stack
AndroidCloudKotlinMongoDBRealm
About the role
- Design and develop advanced Android (Kotlin) applications with a focus on offline capabilities, TDD and SOLID principles
- Implement synchronization mechanisms to manage data consistency between local storage and cloud servers
- Utilize Hilt for dependency injection to enhance scalability and maintainability
- Work with Couchbase Lite, Realm, RESTful APIs and MongoDB to store and retrieve data efficiently
- Optimize data structures and algorithms for maximum performance and minimal resource consumption on low-spec devices
- Collaborate with cross-functional teams to define, design and ship new features
- Optimize unit tests for robustness, including edge cases and reliability
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
- Provide technical expertise and guide team members in knowledge acquisition
- Lead and facilitate code reviews, providing constructive feedback and promoting best practices
Requirements
- Bachelor's or Master's degree in Computer Science, Software Engineering or related field
- Minimum of 7 years of professional experience in mobile development, with a focus on Android and offline-first applications
- Strong knowledge of Kotlin and its ecosystems (Jetpack Compose, Flows, etc.)
- Proven experience in offline-first application development and data synchronization
- Familiarity with Realm, Couchbase Lite, MongoDB and RESTful APIs
- Experience with Android SDK, different Android versions, and handling different screen sizes
- Solid understanding of the full mobile development life cycle
- Experience with Test-Driven Development (TDD), SOLID principles, Hilt for dependency injection, and multithreading
- Deep understanding of data structure optimization and performance tuning for low-spec devices
- Excellent problem-solving skills and ability to perform in a team environment
- Bonus: Exposure to Generative AI, ML Kits for enhancing app capabilities