GPU Profiling Software Engineer

NVIDIA NVIDIA · Semiconductors · Shanghai, China

Software Engineer role focused on developing and improving GPU profiling tools and libraries to help developers analyze and optimize application performance on NVIDIA GPUs. This involves working with low-level libraries, hardware specifications, and cross-disciplinary teams.

What you'd actually do

  1. Partner with multi-disciplinary teams to design, implement, and verify performance metrics for NVIDIA GPUs
  2. Work on developing and improving methodologies for profiling data collection from GPUs
  3. Define, invent, and improve our GPU profiling library with new features to allow NVIDIA's customers to extract the best performance out of their applications
  4. Read and understand HW specs to design solutions based on it
  5. Craft software unit level tests and framework ensuring the quality of the product

Skills

Required

  • C
  • C++
  • Python
  • Data Structures
  • Algorithms
  • Computer Architecture
  • Operating System concepts
  • SW design principles

Nice to have

  • Device Drivers
  • System Software development
  • CUDA
  • OpenCL
  • OpenGL
  • Direct3D
  • Vulkan
  • developer tools
  • performance analysis
  • Assembly language

What the JD emphasized

  • performance analysis capabilities
  • performance analysis of GPU applications