AppleBring the best user experience to customers through innovative hardware, software and services.
Software Engineer, London
About the role
Summary
Imagine what we could do together. At Apple, new ideas have a way of becoming phenomenal products, services, and customer experiences very quickly. We’re looking for a driven but adaptable developer, working primarily in Go, with some Swift, and dipping into other languages like Python or Bash as necessary, to help build a powerful platform that enables internal engineers to deliver incredible experiences to end-customers.
Our team’s device cloud offers thousands of real and virtual Apple devices spanning hundreds of different hardware configurations, for use as remote development devices from desk and for automated testing in CI. Leveraging our device-centric API, engineers can use devices for purposes such as low-level hardware bring-up using custom firmware and kernels, validating ML model performance on released hardware, all the way to automating the UI with XCTest to validate Apple’s cloud services.
Join us to solve problems spanning maintaining a highly available fleet of thousands of Apple devices, constructing complex overlay networks and even SoC or USB debugging, all with the quality expected of Apple - to make this platform just work, like magic, every time!
Description
Apple’s device cloud team has an immediate opening for a software engineer working primarily in Go who will: Collaborate across functions to maintain a fleet of Apple devices numbering in the thousands Improve the functionality, observability, scalability, availability, usability, security, and performance of our services & infrastructure Adapt cloud technologies and industry best practices to solve challenges unique to Apple workloads Triage, investigate, and remediate production issues
Minimum Qualifications
In depth of experience in software development and a passion for software engineering
Experience designing or working with web services (HTTP+JSON, gRPC, etc.)
An understanding of Networks and Networking Protocols
Experience with, or interest in, Go
Troubleshooting distributed systems and networking issues
Preferred Qualifications
Languages: Golang, Swift, C, C++, Objective-C, Python, Java, Scala, shell
RPC libraries and protocols: protobuf, gRPC
Cloud technologies: Kubernetes, Docker, CI/CD, Envoy proxy
Automation technologies: Ansible, Pkl, WebDriver
Experience with IoT or other embedded development

Apple
Ready to apply?
Apply nowAbout Apple
Apple designs the iPhone, Mac, iPad, Apple Watch and Vision Pro along with the software and online services behind them, including iCloud, Apple Pay and Wallet, Siri and Private Cloud Compute. Its London engineering teams build cloud infrastructure, site reliability tooling, security platforms and a device cloud of thousands of real and virtual Apple devices used for remote development and automated testing, with further engineering sites in Cork, Dublin and Munich.
More about Apple →- Company size
- 10001+ employees
Stack
More Go jobs at Apple

Apple
Computers & Electronics Manufacturing
Site Reliability Engineer
Apple Cloud infrastructure is BIG. The storage SRE teams of Apple Cloud are building and runningthe next generation distributed storage systems to support Apple’s most critical services. Operating atour scale, across multiple geographically…

Apple
Computers & Electronics Manufacturing
Software Development Engineer Manager, AIS
Proven track record in software development and architecture in Go (Golang).

Apple
Computers & Electronics Manufacturing
Platform Security Engineer
The Wallet & Payments Security Solutions team sits at the intersection of developer experience and customer trust, building the foundational security layer that every product in the Apple Pay portfolio depends on. We are a group of security…
Similar Go jobs

Radiant
Cloud Infrastructure
Principal Backend Software Engineer
Architect and build core backend services in Go that power AI infrastructure, networking, inference orchestration, and model lifecycle management.

Wheely
Mobility

Neo4j
Data
Software Engineer - Go/Kubernetes, Sharding team
Neo4j is the graph intelligence platform that transforms data into knowledge to power the next generation of intelligent applications and AI systems. It includes enterprise-ready knowledge graphs for accurate, explainable, and governed AI…