Senior Swift Developer Tools Engineer

Santa Clara Valley (Cupertino), California, United States
Software and Services


Weekly Hours: 40
Role Number:200293471
Our team is building the next generation developer tools empowering Swift developers to build products customers love. We're a fast moving, highly skilled but small team designing and building the libraries, systems and tools that Apple’s developers use to build their application and services with. They use our tools to perform their every day tasks, handling a massive and ever growing scale. As such, our tools must be an example of excellence in software engineering. That's a tall order, and we're looking to add more talented and passionate engineers who love dealing with such challenges. You will have experience with some of the skills below. Nobody is expected to have experience with all of these, but we are looking for someone with a strong desire to learn what you don’t know.

Key Qualifications

  • C based language like Swift, ObjectiveC, Rust, C++, C, Go
  • Functional languages like Haskall, Erlang, F#, Scala, Clojure
  • Dependency management systems like crates, golang/dep, npm, gradle/maven, cocoapods
  • Distributed build systems like Bazel/Blaze, Pants, Buck
  • Event driven, asynchronous I/O framework like libuv, netty, swift-nio, tornado, twisted, eventmachine
  • High performance systems
  • Lock-free programming
  • Good understanding of Linux, macOS and iOS


Our team is diverse, balanced and dynamic! You will join a small team of highly motivated engineers who build first-class developer tools and apply them in innovative ways. The people here at Apple don’t just build products — they build the kind of wonder that’s revolutionized entire industries. Together, our work will be the reason millions of customers feel that they can trust our devices every single day. As a senior engineer on the team, you should: • Be familiar with the development lifecycle of iOS, macOS and server applications, and the daily routine of software development teams that build them • Be familiar with dependency management and build systems • Be familiar with compiler and linker technologies • Be able to design intuitive and scalable APIs that developers love to use • Understand async programming models, including the Actors model • Believe in automation and tooling as a critical part of the software lifecycle • Be curious about how systems work and how they fail • Be eager to learn new technologies and solutions • Love open source and collaboration • Be detailed oriented. perfectionists also welcome • Like to be challenged • Be a team mate, a student, and a mentor • Have some cool stories to tell from your past experience

Education & Experience

Bachelor of Science in Computer Science, or equivalent experience.

Additional Requirements