Strong understanding of the Android SDK, OS versions, and screen size differences
Proficiency in Kotlin and Java
Experience with Android frameworks and libraries like Jetpack Compose, Room, and Retrofit
Solid grasp of Android architecture patterns, especially MVVM
Experience with Dependency Injection and Dagger
Experience working on multi-module applications
Skilled in writing Unit, UI, and End-to-End tests, with a focus on testable code
Experience with offline storage, threading, and performance tuning
Proficiency working with REST, GraphQL, and WebSocket APIs
Nice to Have
Experience building native Android NDK components
Exposure to ARCore or ML Kit
Experience deploying edge ML models using ExecuTorch/ONNX Runtime Mobile
Familiarity with real-time voice, video, and data communication using WebRTC
Game development experience using engines like Unity or Unreal
Responsibilities
Design, develop, and maintain high-performance Android applications
Collaborate with cross-functional teams to define, design, and ship new features
Ensure high performance, quality, and responsiveness of applications
Discover, evaluate, and implement new technologies to boost development efficiency
Participate in code reviews and provide constructive feedback
Work with backend teams to define mobile-optimized service contracts
Contribute to Agile/Scrum workflows: estimating engineering effort, identifying risks, planning implementation, and supporting rollout across multiple teams