Software Development Engineer - Test
Summary
The Apps Test Engineering team partners with Applications QA and Engineering teams across Apple to run automated tests at scale — ensuring the quality and reliability of apps that millions of people depend on every day, from News and Weather to Final Cut Pro. We build the tools, frameworks, and infrastructure that make large-scale automated testing possible across a broad range of device types and backend services. If you're passionate about developer productivity, test infrastructure, and engineering quality at Apple's scale, this is the team for you.
Description
In this role, you'll design and build testing pipelines, frameworks, and infrastructure that empower QA teams to run automated tests across Apple's full suite of applications. You'll develop tooling that surfaces patterns and root causes from test results, helping engineers ship with greater confidence. With broad autonomy to determine technical solutions, you'll also mentor teammates, contribute to technical decision-making, and collaborate with a wide range of stakeholders across Apple.
Responsibilities
- Build and maintain testing pipelines and frameworks that enable QA teams to run automated tests at scale across a wide variety of device types and platforms.
- Design and build infrastructure to support automated test execution across Apple's applications, from consumer apps like News and Weather to professional tools like Final Cut Pro.
- Develop backend tooling and services that surface patterns in automated test results and provide actionable insights into root causes.
- Gather and translate complex, cross-functional requirements into clear technical specifications and scalable engineering solutions.
- Own projects from initial concept through delivery, coordinating efforts across team members and aligning with stakeholders throughout.
- Mentor junior engineers, contributing to their technical growth and helping raise the team's overall engineering bar.
- Contribute to technical decision-making across the team, evaluating solutions against client requirements, team skillsets, and industry trends.
- Integrate AI-assisted development practices to improve software quality and accelerate delivery.
Minimum Qualifications
- 5+ years of industry experience as a software developer, with a track record of delivering production-quality tooling or infrastructure.
- 3+ years of Python development, including object-oriented design, class hierarchies, and writing maintainable, scalable Python codebases.
- Proficiency in at least one additional programming language (Scala or Swift strongly preferred) with 3+ years of hands-on use.
- Experience working with CI/CD systems and adjacent tools such as Jenkins, including pipeline configuration and maintenance.
- Demonstrated ability to gather complex, cross-functional requirements and author thorough technical specifications.
- Hands-on experience leveraging AI tools and techniques to deliver high-quality software.
- Strong computer science fundamentals spanning object-oriented design, data structures, algorithm design, and complexity analysis.
- Excellent communication and interpersonal skills, with proven ability to collaborate effectively in cross-functional environments and deliver solutions that serve multiple stakeholders.
- Bachelor's degree in CS, Engineering, or a related field, or we may consider an equivalent industry experience.
Preferred Qualifications
- Experience with DevOps tooling and practices, including Ansible, Splunk, and Kubernetes.
- Familiarity with Apple testing tools and platforms such as XCTest and XCUITest.
- Track record of driving test infrastructure or developer tooling initiatives in a large-scale, multi-platform environment.
- Skilled in coordinating project delivery across diverse teams, balancing technical depth with clear stakeholder communication.