About The Position

The Human Interface Devices Software team develops drivers, frameworks, and tools supporting sensing technologies across Apple products, primarily multi-touch technology. The team works with Algorithms, Firmware, Design, and UI teams to optimize sensor and software performance across the stack. The engineer will develop drivers, frameworks, and tools for iOS, maintain existing software, and design new software stacks for future products and sensing technologies. The role suits someone who cares about user experience and human factors, supports technology investigations, and is comfortable working across multiple levels of the software stack.

Requirements

  • Bachelor of Science degree and 3 years of relevant industry experience.
  • Experience developing system software, such as drivers or frameworks.
  • Strong C/C++ and object-oriented programming skills.
  • Excellent debugging skills.
  • Ability to quickly become familiar with unfamiliar code and understand relevant functionality.
  • Comfort working at both higher and lower levels of software.
  • Experience using AI-assisted development tools in system software development flows.
  • 6 years of experience developing embedded software, including firmware and device drivers.
  • Experience using C/C++ for low-level systems and designing and implementing system software for drivers.
  • Kernel driver development experience, including designing and implementing kernel drivers for hardware sensors in Unix, Linux, or iOS.
  • Experience profiling code in kernel and user space.
  • Experience debugging embedded system issues using hardware, assembly, and software tracers.
  • Strong verbal and written communication skills.
  • Self-directed and analytical, with the ability to work well in a team environment.

Nice To Haves

  • Experience with human factors and a strong interest in user experience.
  • Enjoys supporting technology investigations.

Responsibilities

  • Develop drivers, frameworks, and tools for iOS.
  • Maintain existing software.
  • Design new software stacks for future products and sensing technologies.
  • Work with Algorithms, Firmware, Design, and UI teams to optimize sensor and software performance across the stack.
  • Design and implement system software, including drivers.
  • Design and implement software interfaces and APIs among software, firmware, and algorithms modules.
  • Use AI-assisted development tools to enhance productivity, create test frameworks and tooling, and improve code quality.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service