Enable job alerts via email!

Senior Performance Software Engineer, Deep Learning Libraries

Quality Control Specialist - Pest Control

Santa Clara (CA)

On-site

USD 184,000 - 426,000

Full time

25 days ago

Boost your interview chances

Create a job specific, tailored resume for higher success rate.

Job summary

A leading technology company seeks a Senior Performance Software Engineer to develop optimized code for deep learning libraries. The role involves writing compute kernels in C++ CUDA and collaborating with various teams to enhance performance on NVIDIA GPUs. Ideal candidates will have a strong background in software engineering and parallel programming, with a focus on deep learning operations.

Benefits

Equity
Benefits

Qualifications

  • 6+ years of relevant industry experience.
  • Strong C++ programming and software design skills.

Responsibilities

  • Writing highly tuned compute kernels in C++ CUDA.
  • Collaborating with teams on optimization and performance.

Skills

C++
Performance Analysis
Debugging
Parallel Programming

Education

Masters or PhD in Computer Science

Tools

CUDA
OpenMP
pthreads

Job description

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 cuDNN , cuBLAS , 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, mostly in C++ CUDA, 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
  • 6+ 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

Ways to stand out from the crowd:

  • Tuning BLAS or deep learning library kernel code
  • CUDA/OpenCL GPU programming
  • Numerical methods and linear algebra
  • LLVM, TVM tensor expressions, or TensorFlow MLIR

NVIDIA is widely considered to be one of the technology world's most desirable employers. We have some of the most forward-thinking and hard working people in the world working for us. If you're creative, autonomous, and love a challenge, consider joining our Deep Learning Library team and help us build the real-time, cost-effective computing platform driving our success in this exciting and quickly growing field.

The base salary range is 184,000 USD - 425,500 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.

#deeplearning

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.

Similar jobs

Senior Performance Software Engineer, Deep Learning Libraries

California Jobs

San Mateo

On-site

USD 184,000 - 426,000

Yesterday
Be an early applicant

Principal Software Engineer (Cube Core)

Cube Dev

San Francisco

Remote

USD 150,000 - 220,000

Yesterday
Be an early applicant

Software Engineer, Machine Learning

Figma

San Francisco

Remote

USD 149,000 - 350,000

Yesterday
Be an early applicant

Senior Android Engineer, Instacart Business

Instacart

San Francisco

Remote

USD 162,000 - 217,000

11 days ago

Senior Software Engineer, Streaming Protocols

NVIDIA

Remote

USD 184,000 - 357,000

Yesterday
Be an early applicant

Senior Software Engineer - Parallel Computing Systems

NVIDIA Corporation

Santa Clara

On-site

USD 184,000 - 357,000

Today
Be an early applicant

Senior Software Engineer at Demandbase

HuntsBot

Seattle

Remote

USD 150,000 - 190,000

Yesterday
Be an early applicant

Senior Software Engineer

Flourish Health

Remote

USD 150,000 - 189,000

Yesterday
Be an early applicant

[Hiring] Senior Software Engineer, Data Acquisition @People Data Labs

People Data Labs

Remote

USD 160,000 - 200,000

Yesterday
Be an early applicant