Senior System Software Engineer, GPU Development Tools



Software Engineering
Bengaluru, Karnataka, India
Posted on Friday, September 22, 2023

We are now looking for a GPU Development Tools System Software Engineer. A key part of NVIDIA's strength is our sophisticated development tools and simulation environments that enable our incredible pace of delivering new technology to the market. We are looking for forward-thinking, hard-working, and creative people to join a dynamic software development team with high production-quality standards. Our work includes designing and developing frameworks for creating GPU workloads that enable functional and perf verification of GPU. NVIDIA is continuously pushing the state of the art in chip development software and infrastructure to enable the next generation of chips.

In this position, you will develop the core infrastructure needed to generate stimulus for modeling, analysis, and debugging of upcoming general-purpose graphics and computing chips. Our infrastructure is critical to enable GPU development and verification throughout the chip lifecycle and is used across many diverse groups of engineers including but not limited to chip architects, driver developers, and verification engineers.

What you will be doing:

  • As a member of the team, you will play a critical role in all stages of GPU development

  • Design and architect features in compute and graphics stimulus development framework similar to OpenGL and CUDA

  • Coordinate with GPU architects to craft and implement infrastructure used for functional and performance verification for the upcoming architecture

  • Design and develop GPU stimulus analysis tools such as debuggers & disassemblers

  • Empower GPU architects to understand application performance today and model industry-leading performance for tomorrow

  • Work closely with HW & SW teams to enable speed-of-light development of GPU software ecosystem

  • In this role, you will dramatically improve the daily workflows of the world's top chip modelers and designers to help produce the world’s next greatest generation of GPUs

What we need to see:

  • Bachelors or masters in computer science / computer engineering or equivalent experience

  • 3+ years of overall experience with large portion of that working on C++ based projects

  • Strong C++ programming capability required (experience with boost or C++11/14 a plus)

  • Knowledge of object-oriented design patterns

  • Good understanding of system software and Operating Systems

  • Strong expertise in design and development of complex massively parallel algorithms

  • Experience with chip and/or system simulation a huge plus

  • Strong scripting skills desired

  • Graphics or CUDA knowledge a plus

  • Experience with OpenGL, Vulkan, Direct3D, CUDA APIs a plus

  • Excellent interpersonal skills

NVIDIA is committed to fostering a diverse 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.