CPU Compiler Engineer

Santa Clara Valley (Cupertino), California, United States
Software and Services

Summary

Posted: Nov 6, 2018
Weekly Hours: 40
Role Number: 200007794
The CPU compiler optimizations and backend team is looking for an highly talented and motivated engineer working to advance compiler performance and code generation technology. We develop optimizations and support for ARM and x86 CPUs on all Apple devices including iPhones, iPads, Apple Watches, Apple TV, and more. We work across many different organizations on state-of-the art, industry impacting technology that enhances the user experience of all Apple customers with better run-time performance, battery life, compile-times, or code size. This team also engages in application and benchmark performance analysis and tool developments. A lot of the work will be part of the LLVM open source community and can be presented at the LLVM developer conference.

Key Qualifications

  • High level C and C++ programming expertise.
  • Passion for developing optimizing compilers for modern architectures.
  • Experience in analyzing application performance.
  • Assembly programming expertise.
  • Working knowledge of computer architecture and micro-architecture.
  • Track record of building high-quality production software.
  • Strong communication and teamwork skills.
  • LLVM compiler experience a plus, but not required.

Description

Our team is diverse, collaborative, creative and at the edge of modern CPU compiler and tools developments. You will join a small team of highly motivated engineers who are passionate about advancing compiler technology to the next level. Your work will impact all classical applications used by mom and dad, billions of other customers, and new applications that will impact the way people live in the years to come. Next time you pick up an Apple device most if not all the software running on it performs better because of your work. Together, we turn imagination and engineering prowess into something big. Something that could not happen anywhere else.

Education & Experience

Bachelor of Science in Computer Science, or equivalent experience.

Additional Requirements

  • If possible, provide a portfolio of your work.