- Apple Support College Program - San Diego State University - San Diego, CA
- Behavioral Scientist / Quantitative UX Researcher / Research Scientist, Apple Media Products - San Diego, CA
- Software QA Engineer. Apple Media Products - San Diego, CA
- Apple TV - Software Engineer - San Diego, CA
- Frontend/UI Software Engineer- Apple Cloud - San Diego, CA
Working at Apple means doing more than you ever thought possible and having more impact than you ever imagined.
Summary Posted: May 3, 2022
The Human Interface Devices Software team is a group of creative and passionate software/firmware engineers responsible for the next-generation sensing technologies across all Apple products. We have deep experience developing embedded systems software and building stacks that enable the best user-experience. We work closely with the Algorithms, Quality, Design, and UI teams to ensure sensor and firmware performance is optimized across all layers of the stack. We are looking for talented individuals who enjoy building firmware for embedded processors, prototyping concepts, investigating new technologies, and delivering high-quality products.
2+ years experience developing embedded software such as firmware and device drivers
* Strong skills in C/C++ for embedded systems
* Experience in hardware bring-up and embedded debugging skills
* Working knowledge of one or more communication protocols (e.g. USB, UART, SPI, I2C)
* Ability to quickly familiarize yourself with code you’ve never seen before, and understand the pertinent functionality
* Strong verbal and written communication skills
* Self directed, analytical, and work well in a team environment
* Comfortable working on both higher and lower levels of software
We are looking for an engineer to work on sensor drivers, frameworks, and tools for embedded platforms within the iPhone and audio products. In this role, you will bring up new sensing chipsets from initial specification to production for future products and maintain existing firmware components. Ideally, you have experience dealing with human factors, care deeply about user experience, enjoy supporting technology investigations, and are comfortable jumping between multiple levels of the software stack.
Education & Experience
BS or MS in CS/CE/EE
Experience designing SW interfaces or APIs
* Familiarity with kernel device drivers
* Debugging skills with JTAG, oscilloscopes, and logic analyzers
* Development experience on Unix, Linux, or macOS is preferred
* Familiarity with other programming languages such as Python is a plus