Deep Learning Firmware Engineer
Santa Clara Valley (Cupertino) , California , United States
Posted: Oct 21, 2020
Role Number: 200199213
We live in a mobile and device driven world, where Deep Learning technology enables a new class of applications. Are you passionate about enabling unique user experiences such as Face ID, Animoji, and AR games? Imagine the countless possibilities powered by Artificial Intelligence. In the Camera Engineering team, we are dedicated to providing hardware acceleration using the new proprietary Apple Neural Engine SOC to enable real time, low power and high performance execution of Deep Learning workloads. The Apple Neural Engine Firmware team is working on exciting technologies for future Apple products. We're looking for a driven and dedicated engineer to work on the next generation of Apple products.
- Experience with SoC or/and GPU acceleration for AI
- Experience with SW/HW parallelism, and asynchronous processing
- Experience with embedded systems, and real time OS development
- Experience with low level OS/driver programming
- Excellent programming skills of C/C++
- Excellent software design, problem solving and debugging skills
- Good understanding of Deep Learning workloads
- Excellent communication and teamwork skills
You will implement control and manage Apple Neural Engine SoC, with an emphasis on performance and power and stability. You will add support for new hardware feature into the Apple Neural Engine firmware stack. You will run performance analysis and optimization of ML workloads running on Apple Neural Engine. You will evaluate existing hardware blocks and contribute to the definition of new hardware blocks. You will collaborate with the hardware team to review hardware specifications; in addition, you will work closely with the design and micro-architecture team to understand the functional and performance goals of the design, and design appropriate tests. You will also partner with the driver/compiler teams to integrate HW acceleration in our software stack.
Education & Experience
Master's degree or higher in Computer Science or equivalent field.