Senior Deep Learning Compiler Engineer
Santa Clara Valley (Cupertino), California, United States
Machine Learning and AI
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 experience such as Face ID, Animoji, AR games? Imagine the countless possibilities powered by Artificial Intelligence. In the Video Engineering team, we are dedicated in 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. Our success is the result of very talented people working in an environment which cultivates creativity, partnership and cross functional collaboration. These elements come together to make Apple an amazing environment for motivated people to do the greatest work of their lives. Will you help us design the next generation of revolutionary Apple Products?
- Passion for developing and optimizing compilers for modern architectures
- Working knowledge of compiler architecture, front-end and middle-end optimizations, scheduling, register allocation, back-end code generation
- Experience with neural networks inference on dedicated SOC or GPU
- High level C++ programming expertise
- Excellent problem solving and debugging skills
- Proven track record of building high quality production software
- Excellent communication and collaboration skills
We develop compiler technology to accelerate deep learning applications for Apple products. You will: Architect and develop the compiler for Apple proprietary Neural Engine Accelerator architecture, to enable inference of deep learning networks onto this architecture with an emphasis on performance and power. Bring up new hardware silicon and add support in the compiler for these hardware features. Work on bringing the compiler code to production quality and enable a wide range of applications of deep learning technology, for internal clients and 3rd party developers. Evaluate existing hardware blocks and work closely with the platform architecture team on the definition of new hardware features, and hardware specification review. Work with the micro-architecture design team,to understand the functional and performance goals of the design.
Education & Experience
Masters's degree or higher in Computer Science or equivalent field.