NVIDIA is a leading technology company seeking a Principal Developer Technology Engineer to develop techniques for accelerating application workloads on advanced computer architectures. The role involves collaborating with customers and various teams to optimize performance on NVIDIA's hardware.
Responsibilities:
- Research and develop techniques to accelerate top CSP workloads on NVIDIA’s computing platform including advanced CPUs, GPUs and interconnects
- Work directly with key customers to perform in-depth analysis and optimization of complex workloads to ensure the best possible performance on current and next-generation hardware
- Collaborate with libraries, tools, system software architecture, hardware, and research teams at NVIDIA to influence the design of next-generation programming models, software, and architectures
Requirements:
- Masters degree in Computer Science, Computer Engineering, or related computationally focused science degree (or equivalent experience)
- 10+ years of relevant work experience or research
- Programming proficiency in C/C++ with a deep understanding of software design, programming techniques, and algorithms
- A background that includes parallel programming, ideally CUDA C/C++
- Hands on experience doing low-level performance optimizations
- In-depth expertise with CPU and GPU architecture fundamentals
- Strong math skills, including linear algebra, for problem-solving and performance modeling
- Good communication, organization and prioritization skills
- Designed highly optimal parallel algorithms and data structures for applications with high bytes to compute ratio, such as processing directly on compressed data and kernel fusion
- You optimized end-to-end performance of applications spanning many layers of software, from OS to high-level frameworks
- You influenced hardware feature design leveraging your application and domain knowledge