Device Driver Engineer

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


Weekly Hours: 40
Role Number: 200042990
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, you’ll ensure 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 USB Software team within Apple's Core OS organization is looking for an exceptional engineer to work on state-of-the art USB driver technology. Working on a core technology you will have the opportunity to have a major impact on the design and implementation of Apple's products. Our environment fosters product innovation, rapid product iteration, and values initiative.

Key Qualifications

  • Solid C and C++ coding and debugging skills
  • Demonstrated creative, critical thinking and troubleshooting skills
  • Outstanding written and verbal communication
  • Highly professional, with the ability to deliver solid work on tight schedules
  • A genuine interest in driver and system architecture development
  • Excellent collaborative skills


Work with a highly skilled engineering team in the design and implementation of drivers and frameworks Drive product features and functional/industry specifications Bring-up, verification, and debug of devices on new hardware platforms Work with cross-functional teams to support product requirements for products

Education & Experience

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

Additional Requirements

  • Additional Success Factors:
  • Familiarity with iOS/macOS toolchain
  • Experience with IOKit and iOS/macOS driver development
  • A fundamental knowledge of low-level and system level USB architecture and implementations
  • Experience with common hardware architectures (ARM, PPC, MIPS, x86)
  • Ability to use an oscilloscope and logic analyzer and to read CATC logs and board schematics