Why this opportunity stands out
Lead the Android engineering effort for a product used at scale, with Kotlin and Jetpack Compose at the centre of the stack and AWS behind the services.
About the role
We are recruiting a Staff Android Developer to lead the Android engineering effort for a product used at scale, where the mobile app is one of the main ways our customers experience the service.
This is a staff-level role. You will set the technical direction for the Android codebase, own how the app is built and tested, and work alongside the backend and platform engineers who run the services the app talks to. You will spend most of your time writing and reviewing code, but you will also be the person others come to when a hard problem needs a decision.
The stack is Kotlin and Jetpack Compose, with a modern Android architecture behind it, and the services the app depends on run on AWS. You will work on performance and reliability as much as on features, and you will care about the release process, the testing and the observability around it.
Key responsibilities
Design and build features in Kotlin with Jetpack Compose, and keep the app consistent and considered.
Own the app architecture: modules, state management, data flow and how the app talks to the services behind it.
Work with the backend and cloud engineers on the AWS services the app depends on, so the contract between the two holds up under load.
Raise the quality bar: testing, release process, crash and performance monitoring, and what the team learns from them.
Review code across the team, and mentor the engineers you work with, so the whole team gets better.
Keep up with the platform - Kotlin, Compose and the Android releases - and make sure the app keeps pace with what the platform can do.
Take part in on-call and support the app when it matters.
What they're looking for
Deep hands-on knowledge of Jetpack Compose, and a real understanding of when it is the right tool and when it is not.
Strong knowledge of the Android platform itself: the activity lifecycle, processes, permissions, and how an app behaves on a bad network or a low-end device.
Experience designing and owning the architecture of a production Android app, including how it is built, tested and released.
Practical experience with AWS, and of the services an Android app relies on - API Gateway, Cognito or another identity provider, S3 and CloudFront, and analytics or push notification services.
A sound engineering judgement about testing and release: what you automate, what you check by hand, and how you find out quickly when something breaks.
Clear communication. A staff engineer is expected to write things down and to be able to explain a technical decision to people who will not make it.
Benefits
Hybrid working in London, with a flexible approach to office and remote time.
28 days of annual holiday, plus the usual public holidays.
Private medical cover and a company pension scheme with employer contributions.
A generous learning and development budget, with funded certifications and conference attendance.
The chance to shape the technical direction of the Android app rather than inherit it, and to work alongside engineers who care about the craft.