refresh

Trending Companies

Trending

Jobs

JobsNVIDIA

Senior Performance Software Engineer, Deep Learning Libraries

NVIDIA

Senior Performance Software Engineer, Deep Learning Libraries

NVIDIA

China, Shanghai

·

On-site

·

Full-time

·

1mo ago

Benefits & Perks

Flexible work arrangements

401(k) matching

Competitive salary and equity package

Professional development budget

Flexible Hours

Equity

Learning

Required Skills

React

Python

PostgreSQL

The place to find available career opportunities at NVIDIA for you and people you know. We are now looking for a Senior Performance Software Engineer for Deep Learning Libraries! Do you enjoy tuning parallel algorithms and analyzing their performance? If so, we want to hear from you! As a deep learning library performance software engineer, you will be developing optimized code to accelerate linear algebra and deep learning operations on NVIDIA GPUs. The team delivers high-performance code to NVIDIA’s cuDNNcuBLAS, and TensorRT libraries to accelerate deep learning models. The team is proud to play an integral part in enabling the breakthroughs in domains such as image classification, speech recognition, and natural language processing.

Join the team that is building the underlying software used across the world to power the revolution in artificial intelligence! We’re always striving for peak GPU efficiency on current and future-generation GPUs. To get a sense of the code we write, check out our CUTLASS open-source project showcasing performant matrix multiply on NVIDIA’s Tensor Cores with CUDA. This specific position primarily deals with code lower in the deep learning software stack, right down to the GPU HW.

What you'll be doing:

  • Writing highly tuned compute kernels to perform core deep learning operations (e.g. matrix multiplies, convolutions, normalizations)

  • Following general software engineering best practices including support for regression testing and CI/CD flows

  • Collaborating with teams across NVIDIA:

    CUDA compiler team on generating optimal assembly code

    Deep learning training and inference performance teams on which layers require optimization

    Hardware and architecture teams on the programming model for new deep learning hardware features

What we need to see:

  • Masters or PhD degree or equivalent experience in Computer Science, Computer Engineering, Applied Math, or related field

  • 2+ years of relevant industry experience

  • Demonstrated strong C++ programming and software design skills, including debugging, performance analysis, and test design

  • Experience with performance-oriented parallel programming, even if it’s not on GPUs (e.g. with OpenMP or pthreads)

  • Solid understanding of computer architecture and some experience with assembly programming

  • Identify bottlenecks, optimize resource utilization, and improve throughput.

Ways to stand out from the crowd:

  • Tuning BLAS or deep learning library kernel code

  • CUDA GPU programming

  • Numerical methods and linear algebra

  • LLVM, TVM tensor expressions, or Tensor Flow MLIR

Total Views

0

Apply Clicks

0

Mock Applicants

0

Scraps

0

About NVIDIA

NVIDIA

NVIDIA

Public

A computing platform company operating at the intersection of graphics, HPC, and AI.

10,001+

Employees

Santa Clara

Headquarters

$4.57T

Valuation

Reviews

4.1

10 reviews

Work Life Balance

3.5

Compensation

4.2

Culture

4.3

Career

4.5

Management

4.0

75%

Recommend to a Friend

Pros

Great culture and supportive environment

Smart colleagues and excellent people

Cutting-edge technology and learning opportunities

Cons

Team-dependent experience and outcomes

Work-life balance issues with long hours

Politics and influence over competence

Salary Ranges

47 data points

L3

L4

L5

L3 · Data Scientist IC2

0 reports

$177,542

total / year

Base

-

Stock

-

Bonus

-

$150,910

$204,174

Interview Experience

7 interviews

Difficulty

3.1

/ 5

Experience

Positive 0%

Neutral 86%

Negative 14%

Interview Process

1

Application Review

2

Recruiter Screen

3

Online Assessment

4

Technical Interview

5

System Design Interview

6

Team Review

Common Questions

Coding/Algorithm

System Design

Technical Knowledge

Behavioral/STAR