GPU Frameworks Engineer
Santa Clara Valley (Cupertino), California, United States
Software and Services
Apple’s GPU Software team provides the graphics software foundation across all of Apple's innovative products, including iPhone, iPad, Apple TV, Mac, and Watch. Our responsibilities encompass the frameworks, developer tools, and hardware drivers for the GPU and Display devices on all of Apple’s hardware. This team announced Metal 2 which provides near-direct access to the graphics processing unit (GPU), enabling you to maximize the graphics and compute potential of apps on iOS, macOS, and tvOS. Building upon an efficient low-overhead architecture with precompiled shaders, fine-grained resource control, and multithreading support, Metal 2 further boosts performance by enabling the GPU to take more control of the rendering pipeline. Moving beyond just graphics, Metal 2 provides deep support for GPU-accelerated machine learning and offers enhanced developer tools that make it even easier to debug, optimize, and deploy Metal apps. On Mac, Metal 2 adds support for virtual reality (VR) rendering and external GPUs, and provides new APIs and optimizations to help developers embrace these emerging technologies within their apps.
- Experience with graphics or compute APIs
- Experience with GPU architectures
- Excellent programming skills and knowledge of C/C++
- Excellent software design and problem solving skills
- Excellent software debugging skills
- Strong communication and teamwork skills
The GPU Software Framework team is looking for a highly motivated software engineer that wants to help redefine 3D graphics and compute technologies and the APIs that drive them. Our Metal, OpenGL, OpenCL, and GLKit frameworks are at the heart of the top games and applications on iOS and OS X. These technologies are also critical to achieving the unique visuals and buttery smooth animations seen in the demanding iOS and OS X user interfaces. As part of the GPU Software Framework team, you will help to design and implement our graphics and compute APIs and frameworks. You’ll work closely with the GPU driver teams to help define an efficient driver software architecture for our platforms. In addition, you’ll work with internal and external development teams to get the most out of their graphics and compute applications.
Education & Experience
Technical BS/MS degree
- CPU and GPU performance analysis is a plus
- Experience with modern real-time rendering techniques is a plus
- Prior game development experience is a plus