Build Systems Engineer
Job Description
Summary
The Tools & Frameworks organization builds technologies and tools to help software engineers at Apple and throughout the world to do the best work of their lives. The Build Experience team is supporting that mission by defining the next generation of build system technology to significantly improve the experience of configuring and maintaining builds in Xcode and the Swift Open Source ecosystem.
We are looking for experienced engineers to join our efforts. You'll work on defining innovative large-scale build and distributed systems technologies to meet the needs of Apple's operating system engineers and third party app developers of all scales. If you enjoy working on build automation software, or developer tools like compilers and linkers, then we have many exciting problems to work on!
You would join a small, tight-knit group of engineers who build exciting new technology and have fun while doing so. We are applying unique and innovative ideas to old problems and welcome new contributors who are excited by the opportunity to significantly impact the shape and direction of our product.
We believe that every engineer brings unique skills and perspective. Far more than any specific experience or skill, we are looking for engineers who want to build great software and developer experiences, learn and develop their skills, and ultimately enable others to develop amazing applications.
We are looking for experienced engineers to join our efforts. You'll work on defining innovative large-scale build and distributed systems technologies to meet the needs of Apple's operating system engineers and third party app developers of all scales. If you enjoy working on build automation software, or developer tools like compilers and linkers, then we have many exciting problems to work on!
You would join a small, tight-knit group of engineers who build exciting new technology and have fun while doing so. We are applying unique and innovative ideas to old problems and welcome new contributors who are excited by the opportunity to significantly impact the shape and direction of our product.
We believe that every engineer brings unique skills and perspective. Far more than any specific experience or skill, we are looking for engineers who want to build great software and developer experiences, learn and develop their skills, and ultimately enable others to develop amazing applications.
Description
You'll work on improving the "user interface" of the build system by defining ergonomic yet powerful ways to express project configuration. You'll find ways to combine our unique problem domain with established techniques to provide user friendly experiences while maintaining high performance and scalability. You'll analyze problem requirements, existing solutions, and available systems and make high-level architectural decisions about how to architect various layers of the build system stack, considering both short- and long-term goals. Once solutions are identified, you will work alongside our team and numerous partner teams to implement them while developing appropriate testing and operational mechanisms. You will participate in the Swift Open Source project and engage with the developer community to collaboratively evolve our product.
You will be most successful here as a flexible and proactive engineer who thrives in a supportive, respectful, and balanced work environment with interesting and challenging problems to tackle. You have excellent judgment and integrity with the ability to make timely and sound decisions. You know how to drive constructive discussion of design points, learn from your team, and use your experience to advocate and teach others.
Finally, you will have access to the engineers who create Apple’s full technology, tools, and operating systems stack, enabling the creation of vertically integrated developer experiences that are unique in the industry.
You will be most successful here as a flexible and proactive engineer who thrives in a supportive, respectful, and balanced work environment with interesting and challenging problems to tackle. You have excellent judgment and integrity with the ability to make timely and sound decisions. You know how to drive constructive discussion of design points, learn from your team, and use your experience to advocate and teach others.
Finally, you will have access to the engineers who create Apple’s full technology, tools, and operating systems stack, enabling the creation of vertically integrated developer experiences that are unique in the industry.
Minimum Qualifications
- 3+ years of industry experience, or equivalent experience preferred
- Strong software architecture and coding abilities
- Interest in build systems, developer tools, cloud services, and other high-performance system software
- Excellent collaborative skills, with strong written and verbal communication
Preferred Qualifications
- Positive and respectful attitude in a diverse environment
- Curiosity to understand constraints and bottlenecks in Apple’s software builds and innovative ideas to improve them
- Experience or interest in traditional and/or distributed build systems such as Make, CMake, Bazel, Buck, etc.