Senior Compiler Engineer
NVIDIAJob Title
Senior Compiler Engineer
Role Summary
Join NVIDIA's GPU systems programming team to design and implement Rust-based compiler pipelines, IR frameworks, and JIT/AOT toolchains that compile Rust to CUDA/PTX and machine code. The team enables memory-safe, high-performance GPU kernels and exposes advanced hardware primitives to Rust developers.
This work directly impacts high-performance computing and AI workloads that run on NVIDIA GPUs.
Experience Level
Senior-level β 5+ years of relevant compiler development, language design, or GPU code-generation experience.
Responsibilities
Key responsibilities for this role include:
- Design, implement, and maintain Rust-to-GPU compiler backends, proc-macros, and Rust-native IR frameworks to emit CUDA PTX and machine code.
- Build and optimize compiler IRs and passes that lower Rust AST/MIR to MLIR, PTX, LLVM, or custom IRs with GPU-specific optimizations.
- Implement and support AOT, JIT, and link-time optimization workflows across multiple NVIDIA GPU families and host platforms.
- Architect compiler-enforced safety models that extend Rust's ownership/borrow semantics across GPU launch boundaries to prevent data races in asynchronous GPU execution.
- Expose and implement ergonomic, type-safe device-side abstractions for shared memory, barriers, scoped atomics, Tensor Memory Accelerator (TMA), and warp/cluster operations.
- Profile, debug, and benchmark compilers and GPU kernels; drive production-quality testing, reviews, and issue triage.
- Lead projects from research and design through implementation and deployment, working independently and with cross-functional teams.
Requirements
Must-have qualifications and skills.
- 5+ years of experience in compiler development, language design, or GPU code generation.
- Deep expertise in Rust and compiler internals (rustc, MIR, procedural macros, borrow-checker semantics).
- Hands-on experience with compiler infrastructures and intermediate representations (LLVM IR, MLIR, or custom IR systems).
- Solid understanding of parallel programming models, GPU architectures, and CUDA programming.
- Strong software design, debugging, profiling, and benchmarking skills for compilers and GPU code.
- Proven ability to define project scope, work independently, and coordinate architecture, development, testing, and triage activities.
Nice-to-have:
- Contributions to rustc, Cargo tooling, or open-source Rust-to-GPU projects.
- Experience building custom front-ends, AST translators, or JIT engines.
- Familiarity with MLIR or other extensible compiler frameworks.
- Deep low-level GPU programming experience with modern hardware features (e.g., Tensor Cores, warp-level operations, async transfers).
Education Requirements
Bachelor's, Master's, or Ph.D. in Computer Science, Computer Engineering, or a related field, or equivalent practical experience.
About the Company
Company: NVIDIA
Headquarters: Santa Clara, California, USA
NVIDIA is a global leader in accelerated computing, renowned for its innovative solutions in AI and digital twins that transform diverse industries. The company specializes in networking technologies, providing end-to-end InfiniBand and Ethernet solutions for servers and storage that optimize performance and scalability. NVIDIA serves sectors such as high-performance computing, enterprise data centers, and cloud computing, constantly reinventing its products and services to stay ahead in the market.
