Apple

Software Engineer, Swift Server Networking

Apple London, England, United Kingdom

Computers and Electronics Manufacturing · 10,001+ employees

9 h ago
swift Senior (5-10 yrs) Full-time United Kingdom
Create a free account to apply — email only, no card. You can also save this posting or score it against your profile with AI.

About the role

You will be responsible for building and improving libraries and SDKs for large-scale, mission-critical services using the Swift programming language. You will also collaborate with multi-functional teams to define and deliver functionality for the next generation of Apple Services.

What they look for

Swift Library design API evolution Asynchronous programming Streaming programming Network protocols Linux networking eBPF DPDK io_uring QUIC Cryptography Distributed systems Software engineering Version control Code review

Requirements

Candidates should have strong proficiency in at least one programming language and experience with software engineering workflows like version control. Preferred qualifications include expertise in library design, network protocols, and high-performance Linux networking technologies.

Full description

Imagine what you could do here. At Apple, great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job, and there’s no telling what you could accomplish.

Our Swift Server Networking team is responsible for building libraries and frameworks which form the foundations of mission-critical systems at Apple. We write software in the Swift programming language and specialise in frameworks for distributed systems. Much of the software we produce is published as open source (such as SwiftNIO and gRPC Swift), as we firmly believe in growing a strong community. This, combined with our drive to create amazing products, makes the team a truly exciting place to work.

We’re a collection of highly skilled and friendly engineers who value each other’s opinions and experience. We strive for excellence and believe strongly in the quality of our output. We have built a team of domain experts who specialise in specific core subject areas, and also have broad experience of cloud software services and platforms.

Description

You will have significant responsibilities in building and improving libraries and SDKs for running large-scale, mission-critical services in Swift. You will have the chance to influence the direction of the platform and collaborate with multi-functional teams across Apple to help define, implement, and deliver functionality to help build the next generation of Apple Services.

Our work takes us across multiple domains, from cloud services to iOS and macOS SDK development. The common thread for all of our development is a focus on the Swift programming language. If you have experience in any of these areas, you can hit the ground running, but we believe that great engineers can learn these skills on the job.

Successful candidates will have strong engineering skills and communication, as well as the ability to build relationships and collaborate across the company. You will have a real passion for quality, technical excellence, and an ability to understand complex systems. If this sounds like you, then we would love to hear from you.

Minimum Qualifications

Experience with standard software engineering tooling and workflows, including version control and code review Strong proficiency in at least one programming language (e.g., Java, Python, Swift, C/C++) A willingness to jump in and tackle new problems Quality focus - produce reliable, maintainable, deliverable software Comfortable diving deep - working across multiple levels of abstraction Good at managing relationships & communication - collaborates well with colleagues across a wide range of functions

Preferred Qualifications

You should have a selection of skills and experience from the following list: Expertise in library design/API evolution Asynchronous/streaming programming experience (e.g. Reactive Streams, Dispatch, Combine, or similar) Experience with implementing, debugging, and scaling network protocols. Experience with modern high-performance Linux networking technologies, including some or all of eBPF (with or without XDP), DPDK, and io_uring Familiar with QUIC and some of its extensions Familiar with modern cryptography, including an understanding of the major categories of cryptographic primitives, how to safely use them, and what to avoid

Similar roles