Senior System Software Engineer, Scalable ML Profiling Services

NVIDIA

NVIDIA

Software Engineering, Data Science
Santa Clara, CA, USA
Posted on Oct 29, 2024

We are seeking a deeply technical, creative, and hands-on software engineer to pioneer the next generation of scalable, always-available profiling services. This role will enable developers worldwide to harness the full power of NVIDIA GPUs. We are looking for someone who can help us build the best possible experience for ML performance engineers seeking to debug, profile, and optimize their training and serving pipelines using next-generation profiling technologies.

What you’ll be doing:

Develop tools and features for NVIDIA GPUs that enable ML engineers to profile long-running ML workloads on single node and multi-node clusters. Synthesize customer’s performance analysis use cases into the key GPU performance metrics required to advise those insights. Use NVIDIA GPU performance monitoring system and design efficient hardware performance counter arrangements for observation. Optimize GPU profiling tools to minimize overheads, improve observability, and make smart tradeoffs between observability and observer effects. Innovate and improve our GPU profiling library with new features to maximize ML application performance.

What we need to see:

  • Strong proficiency in C, C++, and Python.

  • 8+ years of experience in system software development

  • B.S. or M.S. in Electrical Engineering, Computer Science, or related technical field (or equivalent experience).

  • Experience in building performance analysis developer tools

  • Strong computer science fundamentals, including algorithms, data structures, optimization, debugging, operating systems, parallel computing and computer architecture

  • Excellent written and verbal communication skills.

Ways to stand out from the crowd:

  • Background in working with drivers and system software.

  • Knowledge of GPU Compute APIs such as CUDA and OpenCL.

  • Prior experience developing tools for GPUs and Knowledge of compute architecture and operating systems.

  • Expertise in performance analysis, particularly for ML and GPU applications.

  • Demonstrate ability to select and implement efficient algorithms for complex problems.

The base salary range is 180,000 USD - 339,250 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.

You will also be eligible for equity and benefits. NVIDIA accepts applications on an ongoing basis.

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.