Overview
The role is in Apple Services Engineering (ASE) in London. ASE is the team behind high profile services such as Apple iCloud, Apple Music, Apple TV+, Apple Arcade and more. We are looking for a senior software engineer to design and build the software for our customer engagement platform, used within Apple Services for message orchestration. The ASE Customer Engagement engineering team is responsible for building the platform that enables communicating with millions of customers every day, across services such as Apple iCloud, Apple Music, Apple TV+, Apple Arcade, Apple News+, Apple Fitness+, Apple Wallet and more. The people here at Apple don\'t just build products - they build the kind of wonder that\'s revolutionised entire industries. Join Apple, and help us leave the world better than we found it.
Responsibilities
* Design, build, improve and maintain server-side applications that process requests at scale with low latency and high availability to support customer messaging features for Apple Services.
* Orchestrate customer messaging built by operations teams using a self-service platform, including targeting, personalising and A/B testing messages to grow the active user base for Apple Services.
* As a senior member of the team, collaborate with QA and SRE to establish reliability and quality goals; architect and code for a highly distributed mass-scale Apple ecosystem.
* Frequently collaborate with multiple partner engineering teams and consumers of the platform; represent the team in meetings and drive consensus across participants.
* Create reusability across features and the engineering stack by using standard libraries and contributing to their development.
* Create technical design documents and drive consensus across stakeholders; introduce best practices and automation and drive their adoption.
* Develop and maintain experience in Java core programming; ensure code is clean, high-performing and aligned with CI/CD workflows.
Minimum Qualifications
* Experience in designing and building production APIs using micro-services written in Java.
* Skilled at writing clean and high-performant code in Java.
* Skilled at using test driven development to empower CI/CD workflows.
* Knowledge of data structures, concurrency and design patterns.
* Experience designing and building loosely coupled and eventually consistent distributed systems.
* Effective written and verbal communication with technical and non-technical cross-functional teams.
* Undergraduate degree related to computing or equivalent experience.
Preferred Qualifications
* Technically leading software development projects across teams.
* Making critical architectural decisions that have long-term impact on success.
#J-18808-Ljbffr