Senior Software Engineer in Test - Software Updates

Santa Clara Valley (Cupertino), California, United States
Software and Services


Weekly Hours: 40
Role Number:200195015
Apple’s Platform Restore and Software Update validation team is responsible to ensure high quality Software releases are delivered to customers. We work closely with development engineering that support and develop creative solutions for tethered and wireless updates on all Apple platforms. Quality engineering owns, develops, and maintains test plans, automation, test tools, and limited infrastructure. Test efforts will target development engineering support and partnering with engineering teams to ensure product quality. The QA effort includes hands-on functional, white box testing, bug reporting/regression, maintaining test guidelines, development and execution of automated tests. The successful candidate should have a strong aptitude for learning new technologies, excellent communication skills, and the ability to drive complex and challenging projects to conclusion. Strong collaboration with engineering, cross functional teams and an ability to thrive under pressure are key skills required to succeed in this role.

Key Qualifications

  • 8+ years of QE or development experience.
  • Excellent Python coding or other scripting language is a must.
  • Experience with automation frameworks and tools development is required.
  • Experience with triage and troubleshooting automated tests and failures to determine product issues in system software domain.
  • Experience with C is desired (Objective C/ C++ desired).
  • Self-motivated with passion for quality and automation.
  • Excellent verbal and written communication skills.
  • Knowledge of file systems, encryption, compression, networking technologies is desired.
  • Excellent knowledge of QA methodologies, writing test plans and test cases, and exploring creative testing ideas.
  • Creative problem solver with the ability to multi task in fast paced environment.
  • Experience in upgrade/rollback is a plus.


Responsibilities include: Contributions to the development of test plans and automation. Execution of pre-submission testing for platform restores and updates. Execution of functional testing and identify opportunities to leverage automation. Identify and create test tools to further enhance coverage. Analysis and triage of test results for regression and functional testing. Support software bring-up efforts on prototype hardware. Provide status reports to management.

Education & Experience

BS in Computer Engineering/Computer Science/Electrical Engineering or equivalent experience/skills

Additional Requirements