Linux QA Automation Engineer

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

Summary

Posted:
Weekly Hours: 1
Role Number:200123116
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 Platform Software team is looking for a Linux QA Automation Engineer to join an innovative team responsible for ensuring the quality of key firmware and software technologies for the Macintosh product line. Mac Platform Software is responsible for bringing up macOS and Linux (in virtualized environment) on all new Macintosh products, including the development and integration of firmware and systems software for macOS and Linux, the development of platform-level features for the Macintosh, and the leadership of cross-functional debug and optimization efforts across hardware and software teams.

Key Qualifications

  • 4+ years experience with automation development and hands on “systems” testing
  • 5+ years in Linux driver testing and qualification experience
  • 5-8 years experience working on test automation development and Linux system testing
  • Programming skills preferably using Python, shell scripting, objective-C/C or C++
  • Experience coding Unit Tests/Integration Tests/System Tests/Regression Tests and test execution in an automation framework
  • Understanding of system architecture and experience qualifying linux device drivers
  • Linux kernel level debugging is a big plus
  • Excellent written and verbal communication skills are needed to facilitate close interaction with development teams, management, and other organizations within Apple
  • Creative thinker and strong problem solver with meticulous attention to detail
  • Strong test planning ability is a big plus.

Description

The Linux QA Automation Engineer is responsible for testing and ensuring the quality of the customer experience when running Linux under virtualization. Primary job responsibilities include: Work closely with developers to understand virtualization technologies in macOS and use-cases to run Linux in that environment Validation of Linux device drivers and system functionality in virtualized environment Debug and root-cause variety of hardware and software issues Creating test plans with development engineers for specific features and Mac hardware programs Developing automated test frameworks and automation harnesses to enable comprehensive component-level test coverage Coordinating with cross-functional test engineering and QA teams to ensure adequate test coverage of complex features Identifying and vocalizing risks areas during product and technology development Being an advocate for the user, representing the needs of our end user community

Education & Experience

Bachelors/Masters degree in {CS, CE, EE} or a degree plus significant programming experience or equivalent industry experience required

Additional Requirements

  • Knowledge of Virtualization technologies such as VirtIO, KVM.
  • Experience with macOS, iOS and Xcode