Haptics Software Engineer

AppleApplyPublished 5 months agoFirst seen 2 days ago
Apply

Summary

We are looking for a creative, motivated, and hard-working software engineer to develop drivers, frameworks, and tools for haptics-enabled next-generation Apple products, including iPhone, Watch, Pencil, and Mac. Come join a tightly-integrated team of hardworking engineers to deliver world-class haptic experiences that will be enjoyed by millions of customers!

Description

As a software engineer in haptics, you will work on all stages of the product development cycle with a vertically-integrated technology team. In this role you’ll collaborate with teams across the company, including firmware, algorithms, UI, services, and design teams to deliver a coordinated customer experience.

Responsibilities

  • You will bring up proof-of-concept prototypes and demos to help design teams explore and evaluate new interactions and user experiences
  • To ensure we craft well-considered features, you will architect low-latency, end-to-end haptics solutions by collecting requirements and constructing block diagrams; you will also negotiate and specify APIs, communication protocols, operating modes, and feature requirements with other software and firmware teams
  • You will develop and detail software features on prototype hardware, potentially with custom silicon and/or algorithms with tight real-time requirements
  • You will debug and root cause issues with QA teams to deliver high-quality, robust software in iOS/watchOS/macOS releases

Minimum Qualifications

  • BS/MS in Computer Science or related fields and 3+ years relevant industry experience
  • Strong C/C++ and object-orientated programming and debugging skills
  • Expertise in developing system software such as drivers or frameworks
  • Ability to build tooling with scripting languages such as Python and Bash
  • Experience with profiling code in both kernel and user-space

Preferred Qualifications

  • Familiarity with application-level programming using Objective-C and Swift
  • Experience with digital signal processing, filter design, and transforming time domain signals
  • Exposure to wireless data transport concepts and protocol design for real-time wireless streams
  • Ability to quickly familiarize yourself with code you’ve never seen before
  • Experience working with microcontrollers, sensors and/or actuators
  • Experience with AI-assisted development tools and LLM applications in software development
  • Experience crafting SW interfaces or APIs with customer-facing features