Senior Software Engineer (Android)
On-siteBengaluru, Karnataka, India
Job Summary
Design, develop, test, automate, and maintain high-performance Point-of-Sale (POS) terminal solutions on Android-based devices using Java and Kotlin. Implement modern development practices, apply domain engineering concepts, and optimize application performance, memory usage, and battery efficiency. Collaborate with cross-functional teams to define, design, and deliver new applications and features while ensuring high-quality UI/UX implementation. Debug and resolve software defects, maintain MVVM/MVP architecture with dependency injection frameworks, and integrate RESTful APIs and third-party services. Mentor junior developers, participate in code reviews, sprint planning, and Agile processes, and stay updated with the latest Android trends.
Required Qualifications
- 6+ years of experience in Android development
- Strong proficiency in Java
- Solid understanding of Kotlin concepts
- Strong knowledge of architectural patterns such as MVVM, MVP, or Clean Architecture
- Experience with modularization
- Experience with dependency injection (e.g., Dagger or Hilt)
- Experience with reactive programming (e.g., RxJava, Coroutines/Flows)
- Proficiency in Git
- Proficiency in CI/CD pipelines
- Proficiency in Agile methodologies
- Strong knowledge of networking concepts, including TCP/IP, HTTP, HTTPS, Web Sockets, and SSL/TLS
- Experience integrating secure authentication mechanisms, such as OAuth, JWT, and token-based authentication
- Strong debugging and performance optimization skills
- Knowledge of unit testing and automation testing frameworks (JUnit, Espresso, Mockito)
- Knowledge of software quality metrics and mechanisms to implement and monitor them
- Knowledge of patterns for software architecture and design
- Strong knowledge of Object-Oriented concepts and software components
- Excellent problem-solving, analytical, and communication skills
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.