Swift Quality Engineer

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

Summary

Posted: Nov 1, 2018
Weekly Hours: 40
Role Number: 200003054
The Swift programming language is a safe, fast, and interactive programming language that combines the best in modern language theory with Apple’s software experience and the diverse contributions from its open-source community. Our team is diverse, balanced and dynamic! As a Quality Engineer on our team, you will work as part of the Apple Swift team, as well as the Swift open source community to engineer solutions, tools, and features which raise the bar on the quality of the Swift compiler. We bring passion and dedication to our job and are committed to our vision and supporting the developer community. Together, our work will be the reason millions of customers feel that they can trust our devices every single day. Are you excited by the idea of making a real impact? Are you prepared to dream big? Imagine what you could do at Apple.

Key Qualifications

  • Hands-on experience in engineering or DevOps with demonstrated programming skills: Python, Swift, C++, Groovy are preferred, but fluency in any language, plus an ability to learn as needed is sufficient.
  • You are curious about software and process: Success requires the ability to think critically about how things work and find opportunities for improvements.
  • You have knowledge of how compilers work: This role will revolve around interaction with the compiler and other tools within the development ecosystem, and it is important to understand how they fit together.
  • Ability to investigate and debug difficult problems: This role often requires triaging and troubleshooting multiple complex systems, so you'll need the ability and willingness to dig deep.
  • Excellent communication, organization and interpersonal skills: In this role, you will need to communicate clearly, and oversee complex tasks among many people.
  • Demonstrate an analytical approach to problem solving and develop an Engineering analysis capability.

Description

In this role, you will build infrastructure and tools to support and improve the quality of the Swift compiler, as well as crafting tools for streamlining Swift compiler development. You will find opportunities to innovate, and create tools and processes to reduce or define away problems. As an example, you might work on improving the pull request testing process for open source changes in GitHub by making it more efficient and adding testing features. In addition to finding technical solutions to problems, you will be involved with coordinating between multiple teams within Apple and the open source community using clear, consistent and timely communication. Some of the key responsibilities for this position include: • Identifying areas for improvement in our build and testing tools and infrastructure. This might also involve analyzing data produced by our testing systems. • Designing new infrastructure and testing systems to support new compiler features or increase developer productivity • Day to day maintenance of infrastructure including triage of issues and driving them to resolution • Handling branching strategies across multiple repositories • Communicating, coordinating, and collaborating across multiple teams and with the open source community. This can take many forms. As an example, you will need to collaborate with many partners for scheduling and distribution of work. You might also collaborate on changes to testing or build systems with members of the open source community.

Education & Experience

B.S. in Computer Science or equivalent experience

Additional Requirements

  • Any of the following skills are major pluses, but not requirements:
  • • Experience using Git for software development
  • • Experience with continuous integration systems and infrastructure, such as Jenkins or Xcode Server
  • • Experience with Swift, ObjectiveC, C/++, Python, CMake
  • • Interest in or familiarity with concepts in programming languages, compilers, and type theory
  • • Experience contributing to open source projects