Senior Software Architect - Deep Learning and HPC Communications

NVIDIA is the world leader in accelerated computing, pioneering accelerated computing to tackle challenges no one else can solve.
Santa Clara, CA, USAWestford, MA 01886, USAAustin, TX, USA
$180,000 - $339,250
Distributed Systems
Senior Software Engineer
Hybrid
5,000+ Employees
5+ years of experience
AI · Enterprise SaaS

Description For Senior Software Architect - Deep Learning and HPC Communications

NVIDIA is leading groundbreaking developments in Artificial Intelligence, High Performance Computing and Visualization. The GPU -- our invention -- serves as the visual cortex of modern computers and is at the heart of our products and services. Our work opens up new universes to explore, enables groundbreaking creativity and discovery, and powers inventions that were once considered science fiction, including artificial intelligence to autonomous cars.

We are the GPU Communications Libraries and Networking team at NVIDIA. We build communication libraries like NCCL, NVSHMEM, and UCX that are crucial for scaling Deep Learning and HPC. We're seeking a Senior Software Architect to help co-design next-gen data center platforms and scalable communications software.

DL and HPC applications have huge compute demands and already run at scales of up to tens of thousands of GPUs. GPUs are connected with high-speed interconnects (e.g. NVLink, PCIe) within a node and with high-speed networking (e.g. InfiniBand, Ethernet) across nodes. Efficient and fast communication between GPUs directly impacts end-to-end application performance. This impact continues to grow with the increasing scale of next generation systems. This is an outstanding opportunity to advance the state-of-the-art, break performance barriers, and deliver platforms the world has never seen before.

What you will be doing:

  • Investigate opportunities to improve communication performance by identifying bottlenecks in today's systems.
  • Design and implement new communication technologies to accelerate AI and HPC workloads.
  • Explore innovative solutions in HW and SW for our next generation platforms as part of co-design efforts involving GPU, Networking, and SW architects.
  • Build proofs-of-concept, conduct experiments, and perform quantitive modeling to evaluate and drive new innovations.
  • Use simulation to explore performance of large GPU clusters (think scales of 100s of 1000s of GPUs)

What we need to see:

  • M.S./Ph.D. degree in CS/CE or equivalent experience.
  • 5+ years of relevant experience.
  • Excellent C/C++ programming and debugging skills.
  • Experience with parallel programming models (MPI, SHMEM) and at least one communication runtime (MPI, NCCL, NVSHMEM, OpenSHMEM, UCX, UCC).
  • Deep understanding of operating systems, computer and system architecture.
  • Solid in fundamentals of network architecture, topology, algorithms, and communication scaling relevant to AI and HPC workloads.
  • Strong experience with Linux.
  • Ability and flexibility to work and communicate effectively in a multi-national, multi-time-zone corporate environment.

Ways to stand out from the crowd:

  • Expertise in related technology and passion for what you do. Experience with CUDA programming and NVIDIA GPUs. Knowledge of high-performance networks like InfiniBand, RoCE, NVLink, etc.
  • Experience with Deep Learning Frameworks such PyTorch, TensorFlow, etc. Knowledge of deep learning parallelisms and mapping to the communication subsystem. Experience with HPC applications.
  • Strong collaborative and interpersonal skills and a proven track record of effectively guiding and influencing within a dynamic and multi-functional environment.

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.

Last updated 20 hours ago

Responsibilities For Senior Software Architect - Deep Learning and HPC Communications

  • Investigate opportunities to improve communication performance
  • Design and implement new communication technologies for AI and HPC workloads
  • Explore innovative solutions for next generation platforms
  • Build proofs-of-concept and conduct experiments
  • Perform quantitive modeling to evaluate and drive new innovations
  • Use simulation to explore performance of large GPU clusters

Requirements For Senior Software Architect - Deep Learning and HPC Communications

Linux
  • M.S./Ph.D. degree in CS/CE or equivalent experience
  • 5+ years of relevant experience
  • Excellent C/C++ programming and debugging skills
  • Experience with parallel programming models (MPI, SHMEM) and communication runtimes
  • Deep understanding of operating systems, computer and system architecture
  • Solid fundamentals of network architecture, topology, algorithms, and communication scaling
  • Strong experience with Linux
  • Ability to work and communicate effectively in a multi-national, multi-time-zone environment

Benefits For Senior Software Architect - Deep Learning and HPC Communications

Equity
  • Equity
  • Benefits

Interested in this job?

Jobs Related To NVIDIA Senior Software Architect - Deep Learning and HPC Communications

Senior Intralogistics Design Engineer, WWDE

Senior Intralogistics Design Engineer at Amazon to design world-class fulfillment centers and logistics systems globally.

XR Systems Architect

XR Systems Architect role at Qualcomm, driving next-gen AR/VR/MR technologies and platforms.

Sr. Software Engineer II (Returns)

Senior Software Engineer II (Returns) position at Narvar, focusing on distributed systems for post-purchase experiences in retail.

Senior Software Engineer - XR

Senior Software Engineer - XR position at NVIDIA, focusing on AR, VR, and Spatial Computing development.

Senior Software Engineer - Distributed Storage

Senior Software Engineer role at NVIDIA for building cloud and on-premises distributed storage infrastructure to support AI/ML systems and services.