Thinking of applying? Check your CV against this job first.
See your match score, your strongest skills for this role, and what's missing — before you spend time on an application.
Your real match score
Free CareerPilot account · Takes about 2 minutes
Imagine what you could do here! At Apple, great ideas have a way of becoming
phenomenal products, services, and customer experiences very quickly. The Apple
Pay Server Engineering team is building the world’s best software for paying and
interacting with the world, from Apple Pay, transit, and event tickets, to
digital keys and identity. Our team in London is growing and we are looking for
engineers who are passionate about their craft, crave the challenge of building
systems at scale, and thrive in a fast-paced environment. If you love solving
meaningful problems that impact millions of people, we want to hear from you!
DESCRIPTION
Our team builds the cloud systems powering Apple Wallet across all of Apple’s
platforms. We interface between devices and partners to deliver amazing features
and new capabilities, ensuring the experience is always easy, private, and
secure for our customers. We’re looking for a senior engineer to join our team
to build the future of Apple Wallet! You'll have the opportunity to tackle the
intricate challenge of building resilient and reliable distributed software
systems at Apple's scale. You will be given flexibility to explore creative
solutions, the support of a talented and driven team, and access to diverse
technologies.
You will have the autonomy and responsibility to take full
ownership of your solutions. You'll join a team involved in every stage of the
product and software development lifecycle and will design, build, test,
deliver, and maintain exceptional software that truly makes a difference. In
this fast-paced environment, you'll be hands-on in all phases, and will actively
shape the architecture and design of our platforms through the experience of
operating, monitoring, and providing on-call support for the software you build.
As a key member of the team, you’ll participate in technical discussions, write
specifications, review code, and produce documentation. Success in this role
therefore requires strong self-motivation, crisp and clear communication, a
highly collaborative approach, and the ability to work effectively across teams
and disciplines.
MINIMUM QUALIFICATIONS
Experience building and maintaining complex, distributed software systems. A
commitment to continuous learning and improvement, and curiosity for new
technologies, techniques, and patterns in pursuit of engineering excellence. An
ability to communicate thoughtfully and clearly, both verbally and in writing,
to discuss complex technical concepts with diverse audiences, including global
teams and external partners. The tenacity and perseverance to drive a complex
project all the way from conception to production.
PREFERRED QUALIFICATIONS
Hands-on software development experience with Java or Kotlin and Spring.
Development and operational experience with REST and/or gRPC services (either
server-to-server or mobile client facing). Experience with containerization and
orchestration (e.g. Docker, Kubernetes). Time spent architecting, building,
supporting or otherwise working on cloud-native (e.g. AWS) applications with
resilience as a core feature. Familiarity with CI/CD pipelines and
infrastructure as code. Experience with observability tools (e.g. Prometheus,
Grafana, OpenTelemetry, Datadog). Understanding of modern networking and
experience using traffic tools for tracing. An appreciation for, and
understanding of, security, privacy, and cryptography (e.g. PKI, certificate
management, JWT). Hands-on experience with SQL/NoSQL databases (e.g. Aurora,
DynamoDB, CockroachDB, Oracle). A track record of building and sustaining
healthy long-term relationships within your team, and beyond its boundaries.
Experience using AI tools to build and understand systems.