Apple's Core Operating Systems group is looking to take the build and test process of the low-level components of iOS, macOS, watchOS, VisionOS and tvOS to the next level. The role is essential to ensure that we continue to provide a top-notch OS to various organizations within the company and eventually a healthy and stable OS release to our customers.
Requirements
- Plans, designs, develops and tests software systems or applications for software enhancements and new products including cloud-based or internet-related tools.
- Completes documentation and procedures for software maintenance and usability.
- Proficiency in Python is essential, any other programming language is a plus
- Debugging skills: Ability to examine debug out and recognize patterns in failures
- Unix operating system test development experience (macOS or iOS development experience is a huge plus)
- Understanding of key components of an operating system
- Ability to work with the engineering team to root cause failures on short/tight cadence
Responsibilities
- We investigate defects found in the OS submission pipeline to identify culprits.
- We triage issues and route them to the correct team using a variety of debug methods.
- We develop and improve the submission process as it relates to test/triage/debug.
- We develop tools and tests that aid in triaging test failures and contribute to the test infrastructure.
- We build software products to implement efficiencies, and to automate testing and debugging.
- We provide a platform to enable our Engineering and Quality teams to deliver better products more effectively by developing orchestration to make the end-to-end process of building operating systems continuously improving
- We work with the engineering and extended test teams to improve the continuous build's regression test coverage.
Other
- As a Software Developer and Test Engineer you will be impacting the software organization at Apple to ensure the internal release of iOS and macOS are reliable every day.
- We collaborate with teams of software and quality engineers.
- We guide the organization on process improvement initiatives.
- Interpersonal skills: Able to relay critical information between stakeholders for rapid resolution of issues
- Execute regression test suites on multiple devices and report failures in a timely manner