Senior Android Engineer
Senior Software Engineers are responsible for setting the technical direction of their team, assisting Team Leaders and other senior technical leaders in creating strategic roadmaps, and prioritising efforts to meet various objectives.
The Senior Software Engineer is responsible for providing technical leadership and subject‐matter expertise, making technical decisions, and ensuring quality and efficiency in project execution. They help to make architecture 'real' for teams, within and outside their area, by defining technical blueprints and patterns. They use their deep, specialist technical knowledge to coach and upskill others, contributing to the community of practice across the Technology organisation.
This role sits within the Resi Consumer Business Line and is embedded with the Resi Lifecycle Web, which is responsible for building, maintaining, and optimising the Domain flagship application.
What Success Looks Like
* Vision C Direction: Drive the technical direction for your squad or multi‐squad group, ensuring individual technical decisions aggregate into a cohesive, scalable system.
* Architectural Implementation: Translate high‐level blueprints into actionable technical patterns and make architecture "real" through hands‐on prototyping and by proposing initial implementations that address scaling and performance issues.
* System Health Ownership: Take accountability for the end‐to‐end lifecycle of owned services and proactively identify opportunities to simplify, optimise, and resolve technical blockers before they impact the business.
* Standards C Platforms: Contribute to and extend shared organisational patterns and platforms, ensuring the final implementation stays true to the original architectural design.
Driving Engineering Excellence
* Quality Integrity: Set the framework for testing, documentation, and version control. You are accountable for the technical integrity of the squad's output and the prevention of technical debt.
* SDLC Optimisation: Continuously evaluate the team's Software Development Life Cycle (SDLC), identify gaps or inefficiencies and drive changes that lead to better team outcomes and faster, safer delivery.
* Innovation: Stay updated on industry trends and evaluate new technologies for potential adoption, prioritising platform improvements that enable strategic business capabilities.
Mentorship & People Development
* Coaching: Provide real‐time technical coaching and mentorship to junior and mid‐level engineers, fostering a culture of high performance and continuous learning.
* Culture of Excellence: Role‐model best practices and development methodologies, ensuring the team has the necessary skills to deliver on the long‐term tech roadmap.
* Collaboration: Lead technical discussions and connect people across different teams to improve cross‐functional outcomes and knowledge sharing.
Delivery & Influence
* Orchestration: Act as the primary technical point of contact for leadership and be responsible for technical effort estimation and mitigating delivery risks.
* Community Contribution: Bring specialist knowledge to the wider organisation by leading or participating in "Communities of Practice" (Guilds) to share learnings across the tech function.
* Business Alignment: Maintain a deep understanding of our business domain—including products, customer segments, and value propositions—to ensure technical solutions provide maximum business value.
Experience
* 5+ years of hands‐on experience in native Android development.
* Proven track record of designing and architecting mobile software solutions for scale.
* Must have played a leadership role in a team that has successfully shipped at least one major mobile application.
* Must have experience leading development for a highly trafficked customer‐facing app or a complex enterprise‐level application.
* Must have experience working with Tech leads to optimising engineering practices and processes.
* Must have experience working in Agile environments.
* Demonstrated experience mentoring and coaching junior and mid‐level engineers.
* Experience collaborating within cross‐functional teams (Product, Design, and Tech) to define technical roadmaps.
* Experience with Microservices architecture and how it integrates with mobile frontends.
* Active contributor to the Android community or internal mobile best practices (e.g., Guilds, Chapters).
* Experience with GraphQL or similar technology.
Technical Skills
* Deep expertise in Kotlin (primary language) and a strong understanding of Java for legacy support.
* Deep expertise in Android SDK and Jetpack Libraries (Lifecycle, Room, Navigation, etc.).
* Deep expertise in modern Architecture Patterns, specifically MVVM and MVI, with a focus on clean architecture principles.
* Deep expertise with UI/UX Implementation – Advanced skills in building dynamic UIs using XML, Jetpack Compose, and adhering to Material Design principles.
* Deep expertise with Performance Optimisation – Experience profiling apps with tools like Android.
* Proficient Understanding of Testing and QA – Strong experience with unit testing (JUnit, Mockito), UI testing (Espresso), and test‐driven development practices.
* Experience with Profiler, LeakCanary, and optimising battery, memory, and network usage.
* Experience with API Integration – Expertise in consuming RESTful APIs, GraphQL, Retrofit, and handling data serialisation with Gson or Moshi.
* Proficient in Android Studio, Gradle, Git.
* Familiarity with mobile accessibility principles and standards.
* Familiar CI/CD and DevOps Tools – Familiarity with build automation (Gradle), CI tools (e.g., GitHub Actions, Jenkins), and Play Store release processes.
Education and Certifications
* Bachelor's/Master's degree in Computer Science or equivalent practical experience.
* Bonus: AWS (or other Cloud Platform) Certification.
CoStar Group is an Equal Employment Opportunity Employer; we maintain a drug‐free workplace and perform pre‐employment substance abuse testing.
#J-18808-Ljbffr