Software Development Engineer - Test
Referral available at Apple
An employee here can refer you. The referrer stays anonymous and reaches out to you directly if interested.
Summary
You will test macOS, iOS, and watchOS applications, interfacing with firmware and drivers using Python and Swift. You will build automated solutions with Xcode UI, collaborate with developers on issues, and drive bugs to closure.
Join the Health Study QE team and help enable research into the next generation of health sensing features. In this role, you will focus on testing application software that collects a wide range of health and sensor data, working directly with technologies like ECG and PPG-based heart rate sensing, as well as novel investigative prototype sensors.
Your testing will span macOS, iOS, and watchOS applications that drive unique user experiences, interface with firmware and low-level software drivers, and provide critical data to processing pipelines. We are looking for a highly motivated engineer who independently drives bugs to closure, collaborates seamlessly with developers to resolve issues, and effectively navigates technical discussions with fellow Quality Engineers, development partners, and program managers.
Minimum Qualifications
- BS in Computer Science or related
- Experience software or application testing with Python and test automation experience
- Experience with Swift programming and developing iOS test automation with Xcode UI automation framework
- Experience collaborating with cross-functional teams, guaranteeing complete test coverage
Preferred Qualifications
- 3+ years in software or application testing with strong Python and test automation experience
- Build creative new tools and methodologies to stress software features
- Author detailed test plans that cover all functionality and edge cases of a system
- Experience leveraging AI-powered development tools to streamline daily workflows, accelerate coding and debugging, creating test frameworks and improve overall code quality and testing
- Partner with development team to quickly learn a new application, break it into functional parts, and identify potential weaknesses
- Develop robust and repeatable automated testing solutions
- Understand the context where an application will be deployed, providing insights to potential failures
- Execute manual and automated test plans on a variety of hardware and software configurations
- Craft quality from an early stage by being involved through the entire project lifecycle
- Documentation of test cases and code used for test execution
- Tracking performance, reporting results to management, driving issues to closure