
Senior Software Engineer, GPU Code Generation for Machine Learning Inference
Required skills
- GPU code generation
- AI inference
- generative AI
- NVIDIA GPUs
- TensorRT
- C++
- Python
- GPU optimization
- compiler development
- performance analysis
Nice to have
- CUDA
- Triton
- CuTe DSL
- CUTLASS
- MLIR
- intermediate representations
Role summary
NVIDIA is seeking a Senior Software Engineer to join the TensorRT team, focusing on high-performance AI inference on NVIDIA GPUs. The role involves developing advanced GPU code generation techniques, compiler optimizations, and inference software for state-of-the-art generative AI models. Responsibilities include designing and implementing efficient code generation, optimizing compilers, analyzing GPU code for bottlenecks, and developing robust software in C++ and Python. The ideal candidate has 4+ years of experience, strong C++ proficiency, and a deep understanding of GPU architecture and parallel programming. Experience with GPU kernels, MLIR, inference frameworks, and performance analysis tools is highly desirable.
NVIDIA is seeking talented engineers to join the TensorRT team and advance high-performance AI inference on NVIDIA GPUs. Our team develops software that accelerates state-of-the-art generative AI models for local and enterprise deployments. We solve challenging problems in GPU code generation, just-in-time compilation, and inference optimization to deliver high performance across diverse models and hardware configurations.
As a Senior Software Engineer, you will develop advanced GPU inference software for TensorRT. We’re looking for engineers with strong experience in GPU optimization and compiler development who can translate a deep understanding of GPU execution into efficient code generation and measurable improvements in generative AI inference.
What you’ll be doing:
- Design and implement efficient GPU code generation techniques in TensorRT that balance generated code performance, compilation overhead, and startup latency.
- Develop compiler optimizations, including operator fusion, dynamic scheduling, and specialization for model shapes, data types, and GPU architectures.
- Profile workloads and analyze generated GPU code to identify bottlenecks and guide compiler and runtime improvements.
- Develop robust, maintainable software in C++, and Python for tooling, testing, and performance analysis.
- Collaborate with GPU architects, kernel developers, compiler engineers, and deep learning experts to guide hardware and software design.
What we need to see:
- BS, MS, or PhD in Computer Science, Computer Engineering, or a related field, or equivalent experience.
- 4+ years of relevant software development experience, including contributions to a substantial codebase or project.
- Strong proficiency in C++ and experience building performance-critical software.
- Understanding of GPU architecture and parallel programming concepts, including memory hierarchies, thread execution, synchronization, and resource utilization.
- A rigorous approach to performance analysis and debugging, with the ability to validate numerical correctness and explain performance tradeoffs.
- Strong problem-solving and communication skills, and the ability to work independently and collaborate across teams.
Ways to stand out from the crowd:
- Experience developing or optimizing GPU kernels using CUDA, Triton, CuTe DSL, CUTLASS, or other GPU programming languages.
- Experience with MLIR compiler infrastructure, familiarity with intermediate representations, lowering, optimization passes, and GPU code generation.
- Familiarity with NVIDIA Tensor Core architecture, mixed-precision computation, quantization, or low-level GPU performance analysis using tools such as NVIDIA Nsight.
- Experience developing inference frameworks such as PyTorch, JAX, ONNX Runtime, TensorRT, TensorRT-LLM, vLLM, and SGLang.
- A track record of measurable performance improvements in production software or contributions to GPU programming and compiler projects.
At NVIDIA, you’ll work with engineers across GPU architecture, compilers, and AI software to solve demanding performance problems. If you are curious and enjoy understanding how hardware executes code and building software that pushes its capabilities, join us in shaping the future of generative AI inference.
Your base salary will be determined based on your location, experience, and other objective job-related factors. The expected base salary ranges for this position are:152,000 USD – 241,500 USD for Level 3; and 184,000 USD – 287,500 USD for Level 4.You will also be eligible for equity and benefits.
Applications for this job will be accepted at least until November 3, 2026.This posting is for an existing vacancy.
NVIDIA uses AI tools in its recruiting processes.
NVIDIA is committed to fostering an inclusive work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status or any other characteristic protected by law.Originally posted on Himalayas
Sample NVIDIA interview questions
- 1
Design a system for a rock paper scissors game
system designmedium - 2
Implement a distributed data migration management platform.
system designmedium - 3
Design a Distributed Build System with Cross-Data Center Artifact Sharing
system designhard - 4
Design a distributed training system for a trillion-parameter language model
system designmedium - 5
Develop a distributed tracing system for tracking and debugging.
system designmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
Staff Software Engineer, Data PlatformFunction Health · Remote · Remote- Staff Software Engineer, SalesforceDAT Freight & Analytics · Denver, CO · Hybrid
- Software Engineer II - Seller ExperienceStubHub · New York, NY · Hybrid
- Senior Software Engineer, Cloud ApplicationsTemporal · Remote · Hybrid
- Research Software EngineerConvergent Research · Boulder, CO · Onsite
Software Engineer IIPariveda · Dallas, TX · Hybrid
