
Sr. Software Engineer, Infrastructure Services (Control Plane)
Required skills
- Go
- Java
- C++
- Python
- Bash
- data structures
- algorithms
- multithreading
- distributed system design
- TCP/IP
Nice to have
- SDN controllers
- SONiC
- OpenConfig
- YANG
- Kubernetes controllers
- operators
Role summary
Apple's Information Systems and Technology (IS&T) organization is seeking passionate Senior Software Engineers to join the Infrastructure Services team. This role focuses on designing, building, and operating distributed control plane and orchestration systems for one of the world's largest cloud infrastructures. You will tackle challenges in global complexity, immense scale, and distributed consensus problems, while architecting scalable microservices and automating network fabrics. The ideal candidate will have strong proficiency in Go, Java, or C++, a solid foundation in computer science and networking fundamentals, and experience with distributed systems and microservices. Preferred qualifications include experience with SDN controllers, Kubernetes controllers, distributed data stores, and automated network provisioning.
Description
We are looking for passionate engineers who love building super-scalable, reliable, and user-friendly systems to support one of the world’s largest cloud infrastructures. In this role, you will design, build, and operate the distributed control plane and orchestration systems that manage virtualized networks, compute, and storage at planetary scale. If you thrive on solving complex distributed consensus problems, architecting scalable microservices from scratch, and automating network fabrics at scale, we’d love to talk to you.
Minimum Qualifications
Strong proficiency in Go, Java, or C++, along with experience in scripting languages (e.g., Python, Bash). Strong foundation in Computer Science fundamentals: data structures, algorithms, multithreading, and distributed system design. Solid understanding of Networking Fundamentals: TCP/IP, L2/L3 routing and switching concepts, BGP, overlay networks, and network virtualization. Proficiency with Git, modern build systems, and configuration management infrastructure. Experience designing, developing, and operating scalable distributed systems, microservices, and high-throughput APIs (REST, gRPC, Protobuf). Understanding of distributed system challenges: state consensus, eventual consistency, partition tolerance, caching, and database design. Demonstrated ability to prioritize, troubleshoot, and resolve critical production issues in large-scale distributed environments. Strong organizational and interpersonal skills to articulate architectural decisions, balance trade-offs, and hit bold milestone targets.
Preferred Qualifications
Experience building SDN controllers, network operating systems (e.g., SONiC, OpenConfig, YANG), or orchestration platforms (e.g., Kubernetes controllers/operators). Hands-on experience with distributed data stores (e.g., etcd, Raft, ZooKeeper, Redis, Cassandra). Experience with automated network provisioning, zero-touch provisioning (ZTP), and large-scale fleet telemetry.
Sample Apple interview questions
- 1
Design a typeahead box for a search engine
system designmedium - 2
Design a rate limiter
system designmedium - 3
Architect a key-value store for distributed systems.
system designmedium - 4
Design a system to schedule jobs in a distributed environment
system designmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
- Software Engineer II, Attack DetectionAbnormal AI · Remote · Remote
Staff Software Engineer, Data PlatformFunction Health · Remote · Remote- Robotics Software Engineer – Motion PlanningPremier Global Links · San Francisco, CA · Onsite
Software Engineer, Runtime InfrastructureNominal · New York, NY · Onsite
Senior Software Engineer, Java - 12 Month ContractAviso · Vancouver, BC · Hybrid
Software Engineer, Robotics & IntegrationeyesAtop · New York, NY · Onsite
