GPU Developer Tools Engineer
Job Description
Summary
Apple’s GPU, Graphics, and Display Software develops Metal, an API for GPU programming that allows efficient use of the GPU and minimizes CPU overhead. It has enabled developers to achieve far greater realism, detail, and interactivity in their games. It is the foundation for utilizing the GPU across all of Apple\'s innovative products, from the iPhone to the latest vision Pro, as well as Apple’s professional and consumer applications from Final Cut and Aperture to iLife and iWork.
We are looking for an engineer to join the GPU Developer Tools Team to focus on working in the foundation for creating the best possible GPU tools. The team responsible for managing and developing all the core technology stack that powers all GPU Tools available at Apple for all platforms, such as the Xcode Metal debugger and profilers.
The ideal candidate will have a passion system programming and curiosity on how the GPU works. If knowing the OS internals, reverse engineering GPU driven flows and optimizing code for data harvesting and processing sounds interesting, this is the team for you.
The ideal candidate will have a passion system programming and curiosity on how the GPU works. If knowing the OS internals, reverse engineering GPU driven flows and optimizing code for data harvesting and processing sounds interesting, this is the team for you.
Description
The team is now seeking an outstanding, driven, and dedicated engineer to join our GPU Developer Tools team and work on GPU Tools core technology stack. This team is responsible for designing and building the Metal frame debugger, shader debugger, shader profiler, counter profiler & other GPU developer tools provided to developers in Xcode and the iOS, tvOS, visionOS and macOS SDKs. Building these tools requires collaborating with multiple groups across software and hardware. The GPU Developer Tools are key to enable developers bring the best in-class Games and Pro Apps to Apple’s platforms.
Minimum Qualifications
- Excellent knowledge of system programming (I/O, memory, multithreading, etc…)
- Excellent programming skills and knowledge of C/C++
- Knowledge of GPU APIs such as Metal, Direct3D, Vulkan or OpenGL
- Excellent software design, problem solving and debugging skills
Preferred Qualifications
- Solid understanding of the graphics and compute pipelines of modern GPU’s
- Experience with GPU performance optimizations