System Software Engineer - GPU Profiling
Core
Developing software libraries and performance analysis tools (Nsight) to help GPU application developers debug, profile, and optimize applications on NVIDIA hardware.
Role type
System Software Engineer (GPU Profiling & Developer Tools)
Builds
GPU profiling libraries, performance analysis tools, and low-level system software for datacenter and embedded GPU applications.
Domain
High Performance Computing (HPC), GPU Architecture, System Software
Deliverable
production ML models | product features | infrastructure
Required skills
C, C++, Python, Data Structures and Algorithms, Computer Architecture (x86, ARM, GPUs), Operating System concepts, SW design principles
Preferred skills
Device Drivers development, GPU APIs (CUDA, OpenCL, OpenGL, Direct3D, Vulkan), Performance analysis of GPU applications, Assembly language
Technologies
CUDA, OpenCL, OpenGL, Direct3D, Vulkan, Nsight, C, C++, Python
Responsibilities
Design and implement performance metrics for NVIDIA GPUs; Develop methodologies for profiling data collection from GPUs; Define and improve GPU profiling library features; Read HW specs to design solutions; Write software unit tests and frameworks; Support platforms from super-computers to embedded systems
Seniority
Mid-Senior, hands-on IC