SWE - Software Development Engineer - Test, CoreOS
Are you a big-picture thinker who loves setting ambitious goals? Do you have a passion for understanding how each line of code affects all the others? In the Core Operating Systems group, we are committed to building fully integrated operating systems that combine hardware, software, and apps into a single Apple experience. Your dedication to cross-disciplinary collaboration will help develop groundbreaking technologies, such as iOS, macOS, watchOS, VisionOS, and tvOS. By crafting these distinct, holistic user experiences, you’ll continue to uphold and advance the excellence people expect from Apple devices.
We are working to take the build and test process of the low-level components of iOS, macOS, watchOS, VisionOS, and tvOS to the next level (think kernel and low-level libraries). We are exploring, measuring, and trying new things. We are responsible for validating nearly a quarter of all changes that go into our OS releases, which affect 1 billion+ customers, so this isn’t just a theoretical exercise. We won’t be satisfied with anything less than outstanding.
Description
As a Software Developer and Test Engineer, you will impact the software organization at Apple to ensure the internal release of iOS and macOS is reliable every day. You will be responsible for building a stable software environment for engineers and internal users of iOS and macOS. The role is essential to ensure that we continue to provide top-notch OS to various organizations within the company and eventually a healthy and stable OS release to our customers.
The responsibilities for this position include the following:
1. Investigating defects found in the OS submission pipeline to identify culprits.
2. Triage issues and route them to the correct team using a variety of debug methods.
3. Develop and improve the submission process as it relates to test/triage/debug.
4. Develop tools and tests that aid in triaging test failures and contribute to the test infrastructure.
5. Build software products to implement efficiencies and automate testing and debugging.
6. 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.
7. Collaborate with teams of software and quality engineers.
8. Guide the organization on process improvement initiatives.
9. Work with the engineering and extended test teams to improve the continuous build’s regression test coverage.
Minimum Qualifications
* Plans, designs, develops, and tests software systems or applications for software enhancements and new products including cloud-based or internet-related tools.
* Proficiency in Python is essential; any other programming language is a plus.
* Unix operating system test development experience (macOS or iOS development experience is a huge plus).
* Debugging skills: Ability to examine debug output and recognize patterns in failures.
* Execute regression test suites on multiple devices and report failures in a timely manner.
Preferred Qualifications
* Knowledge of deep learning technologies to give computers the capability to visualize, learn, and respond to complex situations.
* Ability to work with the engineering team to root cause failures on short/tight cadence.
* Knowledge of operating system fundamentals.
* Interpersonal skills: Able to relay critical information between stakeholders for rapid resolution of issues.
#J-18808-Ljbffr