Senior Software Engineer (Android)
We are looking for a highly skilled Senior Android Engineer to join our engineering team. In this role, you will be responsible for ensuring the health, stability, and technical quality of a key mobile application within a multi-platform mobility ecosystem. You’ll work closely with Site Reliability Engineers (SRE), Tech Leads, and Engineering Managers to manage service changes, uphold availability standards, and continuously improve the technical foundation of the app.
What We’re Looking For
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related discipline.
- Minimum 6 years of experience in Android application development, with at least 2 years in a senior-level role.
- Proficiency in Modern Android Development (MAD), including strong expertise in Jetpack Compose.
- Hands-on experience with Kotlin Multiplatform (KMP) for cross-platform app development.
- Solid understanding of software architecture, design patterns, and clean coding principles.
- Experience with CI/CD pipelines and tools like Jenkins or CircleCI.
- Proven track record working in Agile environments, including Scrum or Kanban frameworks.
- Proficient in Git and modern version control workflows (e.g., GitFlow).
- Strong knowledge of the Android SDK, Kotlin, Android Studio, SQL, and integration with REST/GraphQL APIs.
- Familiarity with both Object-Oriented and Functional Programming paradigms.
- Strong analytical and troubleshooting skills with a methodical approach to problem-solving.
- Excellent communication skills and the ability to collaborate across functions.
- Comfortable leading technical discussions and mentoring other engineers.
Key Responsibilities
Service Ownership & Operational Health
- Own the performance and reliability of assigned services and features.
- Monitor service metrics, resolve bottlenecks, and enhance scalability and efficiency.
- Work with the SRE team to set up robust monitoring and alerting systems for proactive issue resolution.
Change Management
- Collaborate with Tech Leads to review, plan, and implement service changes in line with best practices.
- Coordinate with the Engineering Manager to prioritize updates, balance tech debt, and schedule feature rollouts.
- Ensure smooth change implementation with minimal user disruption.
Technical Leadership & Collaboration
- Provide mentorship and technical support to junior engineers.
- Work closely with product, design, QA, and other cross-functional teams to ensure smooth integration of features.
- Participate in regular code reviews to uphold coding standards and promote maintainability.
Problem Solving & Incident Response
- Troubleshoot and resolve complex technical issues within your service domain.
- Conduct root cause analyses and implement preventive solutions.
- Maintain documentation for operations and troubleshooting procedures.
Strategic Contributions
- Contribute to architectural decisions with a focus on scalability, reliability, and maintainability.
- Stay updated with industry trends and technologies, and apply insights to improve the platform.