Used Tools & Technologies
Not specified
Required Skills & Competences
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Hiring @ 4
Communication @ 4
CUDA @ 4
GPU @ 4
OpenGL @ 4
OpenCL @ 4
LLVM @ 6
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
NVIDIA is hiring a Backend Compiler Engineer for its GPU Software organization. The team builds high-performance GPU machine instruction emitters for Graphics (OpenGL, Vulkan, DirectX) and Compute (CUDA, PTX, OpenCL, Fortran, C++). The role focuses on improving and extending an NVIDIA proprietary GPU compiler backend written in C++ and working closely with global compiler, hardware, and application teams.
Responsibilities
- Understand, modify, and improve an NVIDIA proprietary GPU compiler backend implemented in C++.
- Design and develop new register allocation compiler passes and other optimizations to produce robust, high-performance compiler outputs.
- Collaborate with global compiler, hardware, and application teams to drive improvements and resolve problems.
- Contribute to deep-learning compiler technology spanning architecture design and support through functional languages.
Requirements
- B.S./M.S./PhD (or equivalent experience); MS/PhD highly desired.
- 3+ years of compiler code generation experience (preferably with LLVM).
- Proficient, hands-on C++ programming skills.
- Strong software engineering principles focused on robust and maintainable solutions.
- Good communication and documentation skills; self-motivated.
Ways to stand out
- Significant academic compiler-related project or thesis work.
- Background in LLVM code generation including instruction scheduling, software pipelining, register allocation, GlobalISel, TableGen, LLVM IR, and Machine IR (MIR).
- Experience in compiler unit testing, multiple IRs, and visualization of IRs.
Compensation & Benefits
- Base salary range: 152,000 USD - 241,500 USD (final base salary determined by location, experience, and internal pay equity).
- Eligible for equity and benefits (link to NVIDIA benefits page provided in the original posting).
Applications accepted through at least May 2, 2026.