Full Job Description
Job Summary
The Senior Android Engineer will be responsible for architecting, developing, enhancing, and optimizing large-scale native Android applications. As a senior member of the engineering team, this role will collaborate closely with product, design, and development teams to deliver robust mobile solutions while promoting best practices in application architecture, code quality, testing, security, and mobile performance.
Key Responsibilities
• Design, develop, enhance, and troubleshoot native Android applications in an Agile and collaborative environment.
• Architect and implement complex new features and functionality across the application stack.
• Develop scalable Android solutions using Kotlin and modern Android development practices.
• Collaborate with developers, designers, product teams, and business stakeholders to develop robust and functional solutions.
• Participate in code reviews and architecture discussions.
• Contribute to engineering standards and continuous improvement initiatives.
• Diagnose and resolve application performance, reliability, latency, and scalability issues.
• Apply asynchronous programming and concurrency techniques within Android applications.
• Maintain high standards for code quality, documentation, and testing.
• Develop and maintain unit tests and UI tests to support application quality and reliability.
• Apply Android Architecture Components, MVVM, and Jetpack Compose to application development.
• Leverage AI-assisted development tools across the software development lifecycle (SDLC).
• Support enterprise-level branching and merging workflows.
• Utilize performance analysis tools to identify and resolve mobile application performance issues.
• Apply mobile security and information security best practices throughout application development.
• Collaborate with cross-functional teams to continuously improve mobile application experiences and technical quality.
Required Qualifications
• Bachelor's degree in Computer Science or equivalent practical experience.
• 5-7 years of experience building and maintaining large-scale Android applications.
• Deep knowledge and hands-on development experience with Kotlin.
• Strong experience with Kotlin Coroutines.
• Hands-on experience with Android Architecture Components.
• Strong experience with MVVM architecture.
• Hands-on experience with Jetpack Compose.
• Strong hands-on experience leveraging AI tooling across the software development lifecycle (SDLC).
• Strong Object-Oriented (OO) design and development skills.
• Strong experience with asynchronous programming and concurrency on Android.
• Proven experience with unit testing and UI testing frameworks.
• Demonstrated experience with application architecture, design, coding, debugging, and troubleshooting.
• Experience with enterprise-level branching and merging workflows using Jenkins.
• Strong understanding of mobile application performance, latency, scalability, and security.
• Hands-on experience using mobile performance analysis tools.
• Understanding of current technology trends, information security best practices, wireless network architecture, and mobile technologies.
• Strong problem-solving, communication, and collaboration skills.
Preferred Qualifications
• Familiarity with Room, Dagger, and other commonly used Android libraries.
• Experience with CI/CD pipelines and automated deployment processes.
• Experience mentoring junior engineers or leading small development teams.
• Open-source contributions or active participation in the Android developer community.