Software Integration Engineer
Santa Clara Valley (Cupertino), California, United States
Apple’s Technology Development Group is looking for a highly motivated software engineer to manage software integration across a wide range of critical product technology teams. You will provide a key function in shaping the success of Apple’s current and future products, and help deliver exciting new software features while maintaining Apple’s world-class quality.
- Strong analytical skills
- A genuine passion for solving complex problems
- Proven track record of being proactive, self-motivated, and detail-oriented
- Excellent verbal and written communication skills
- Experience with continuous integration and related systems (Xcode Server, Jenkins etc.)
- Strong knowledge of source code management concepts and systems (Git)
- Experience with scripting languages (Python, Bash, Perl, Ruby, etc.)
- Experience with Objective-C
The TDG integrators are responsible for integrating software for a number of exciting areas across Apple’s product lines. Our products range from high-level applications to foundational frameworks. As a member of this team, you will facilitate the movement of source code through the development process. You will be responsible for ensuring continuous build quality by collaborating with Product Engineering, Program Management and QA to integrate large code changes into our software platforms. As part of this, you will build and contribute to a rich set of automation and tools used to enhance workflows and processes. THE RESPONSIBILITIES OF THE JOB INCLUDE: Build and maintain continuous integration systems Integrate software changes and carefully manage the source repository Write tools and automation to streamline our build and integration processes Diagnose and resolve complex software and integration issues Work with multi-functional teams across Apple to ship products Collaborate with QA to facilitate testing changes pre-integration Develop and enhance engineering workflows Work with engineering partners to understand problems and identify key opportunities to improve the software development process
Education & Experience
Bachelor's degree in an engineering related field, or equivalent experience.