Mac Debug Tools QA Engineer

Beaverton, Oregon, United States
Software and Services


Weekly Hours: 40
Role Number:200167412
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 ensuring the OS is inseparable from each device’s identity as a whole. That’s because this group is 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, and tvOS. By crafting these distinct, holistic user experiences, you’ll continue to uphold and advance the excellence people expect from Apple devices. The Mac Debug Technologies Team is looking for an experienced test engineer to help us ensure the quality of System Integration Debug for the Mac product line. The ideal candidate is proficient with Python 3, familiar with software development in general, system-level software in particular, and has shown a history of strong collaboration with their software team. Your main focus will be test & test framework development and deployment of tests on prototype systems. We work with systems in all phases of development, from pre-silicon bring-up to already-shipping systems. So you’ll be developing tests that will run across simulation, FPGA, new products, and existing products. You’ll be working as a peer to the software team maintaining existing and developing new debug features for Apple’s line of products.

Key Qualifications

  • Experience with the development and deployment of automated and manual white-box testing
  • Experience with continuous integration frameworks (such as Jenkins) and a git-based development flow
  • Experience with firmware, device driver, or kernel-level test development
  • Strong C/C++ and Python 3 programming skills
  • Familiarity with prototype hardware and the corresponding lab tools (scopes, DMMs, flash programmers, etc.)
  • Hands-on approach and willingness to take on new challenges
  • Excellent communication and interpersonal skills


Writing tests in Python Deploying to our Continuous Integration System Triaging failures and following up with the team on fixes Collaborating with test engineers in adjacent teams Managing a fleet of local lab test machines and associated CI automation

Education & Experience

BS in CS, CE, EE or equivalent industry experience required

Additional Requirements

  • Experience developing and validating debug tools
  • Lab management experience