Remote Position
[Remote] Senior Compiler Engineer
🌍 Remote · United States
💼 Full-time
Note: The job is a remote job and is open to candidates in USA. NVIDIA is dedicated to reinventing accelerated computing and developing advanced GPU technologies. The company is seeking a Senior Compiler Engineer to build Rust-to-GPU compiler pipelines, intermediate representation frameworks, and JIT compilation systems for safe, high-performance CUDA development. The role also involves GPU-specific optimization, compiler-enforced safety models, and abstractions for next-generation GPU hardware features.
Responsibilities
- Develop Rust-to-GPU Compiler Pipelines: Design, implement, and maintain custom compiler backends (such as rustc codegen backends and proc-macros) and Rust-native intermediate representation (IR) frameworks to compile standard Rust directly to high-performance CUDA PTX and machine code
- Build compiler IRs and Optimizers: Work with modern compiler architectures to lower Rust AST and MIR into IRs including MLIR, PTX, and LLVM, including GPU-specific optimizations
- Support complex ahead-of-time, just-in-time, and link time optimization workflows: Build state-of-the-art tooling to support users targeting a broad family of NVIDIA GPUs, host platforms, and feature sets
- Define Safe Parallel Abstractions: Architect innovative compiler-enforced safety models that extend Rust's ownership, borrowing, and lifetime disciplines across the GPU launch boundary—preventing data races and enforcing memory safety during asynchronous GPU execution
- Expose Next-Gen Hardware Features: Implement type-safe, ergonomic device-side abstractions in Rust for low-level GPU hardware primitives, including shared memory, barriers, scoped atomics, Tensor Memory Accelerator (TMA), and warp/cluster-level operations
- Build the future: Supporting today’s accelerated computing applications is not sufficient. We have to build composable building blocks for others around us to build the applications of tomorrow
Skills
- Bachelor's, Master's, or Ph.D. in Computer Science, Computer Engineering, a related field, or equivalent experience
- 5+ years of relevant work or research experience in compiler development, language design, or GPU code generation
- Deep expertise in the Rust programming language, including a strong grasp of compiler internals (rustc), Rust MIR, procedural macros, and Rust's borrow-checker/lifetime model
- Hands-on experience with compiler infrastructures, intermediate representations (IRs), and code generation (such as LLVM IR, MLIR, or custom IR systems)
- Solid understanding of parallel programming models, GPU architectures, and CUDA programming
- Strong software design skills, including debugging, profiling, and benchmarking compilers and GPU kernels
- Ability to orchestrate agents for product requirement design, architecture, code development, testing, code review, and issue triage
- Ability to work independently, define project goals and scope, and drive complex compiler-engineering efforts from research to production
- A track record of contributing to the Rust compiler (rustc), Cargo tooling, or open-source Rust-to-GPU projects
- Experience building custom compiler front-ends, AST translators, or JIT engines
- Familiarity with MLIR or other extensible compiler frameworks
- Deep proficiency in low-level GPU programming, including the use of modern hardware features (e.g., Tensor Cores, warp-level shuffles, or asynchronous transfer pipelines)
- Experience designing Domain-Specific Languages (DSLs) or tile-based programming abstractions for tensor processing
Benefits
- Equity
- Benefits
Company Overview
Company H1B Sponsorship