Senior Software Architect, AI and HPC

at Nvidia

📍 Santa Clara, United States

$180,000-339,200 per year

SENIOR
✅ On-site

SCRAPED

Used Tools & Technologies

Not specified

Required Skills & Competences ?

Software Development @ 7 TensorFlow @ 4 Communication @ 4 Networking @ 4 Parallel Programming @ 7 PyTorch @ 4

Details

NVIDIA has been transforming computer graphics, PC gaming, and accelerated computing for more than 25 years. It’s a unique legacy of innovation that’s fueled by great technology—and amazing people.

Today, we’re tapping into the unlimited potential of AI to define the next era of computing. An era in which our GPU acts as the brains of computers, robots, and self-driving cars that can understand the world. Doing what’s never been done before takes vision, innovation, and the world’s best talent. The software architecture group at NVIDIA has openings for software architects in the field of AI and high-performance networking and system software. We research, develop, and deploy solutions in networking hardware, programming environments, and system software to make current and future high-end computer systems more performant, scalable, and usable. As an NVIDIAN, you’ll be immersed in a diverse, supportive environment where everyone is inspired to do their best work. Come join the team and see how you can make a lasting impact on the world.

Responsibilities

  • Creating proofs-of-concept to evaluate and motivate extensions in AI Frameworks (PyTorch/NEMO), HPC programming models (MPI, OpenSHMEM, PGAS), new runtime designs, and new network hardware features.
  • Research, design and implement features for AI and HPC communication middleware (NCCL, Open MPI, UCX, UCC, NVSHMEM), and Deep Learning frameworks such as TensorFlow/Pytorch.
  • Review, design, and implement features to enhance compiler features to support the NVIDIA networking ecosystem.
  • Research, design and develop hardware features relevant to scientific, Deep learning, and data-intensive workloads.

Requirements

  • Ph.D, Masters, or Bachelors in computer science, computer engineering, or a closely related field or equivalent experience.
  • 8+ years of experience in parallel programming models, and/or network architecture.
  • Background in algorithm design, system programming, and computer architecture.
  • Strong programming and software development skills.
  • Ability and flexibility to work and communicate effectively in a multi-national, multi-time-zone corporate environment.

Ways to Stand Out from the Crowd

  • Deep understanding of technology and passion for what you do.
  • Strong collaborative and interpersonal skills, specifically a proven ability to effectively guide and influence within a dynamic matrix environment.
  • Background with designing communication middleware for high-performance computing systems, including InfiniBand, DPUs, Ethernet, and Shared Memory.
  • Experience developing and implementing features for compilers, optimizations for compilers, particularly Clang/LLVM, and NVIDIA compilers and experience implementing communications libraries, particularly MPI, OpenSHMEM, NCCL, NVSHMEM, UCX, UCC, or PGAS.
  • Background with CUDA programming and NVIDIA GPUs and programming models for emerging architectures including hierarchical heterogeneous memory systems and accelerators.

With competitive salaries and a generous benefits package, we are widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us and, due to unprecedented growth, our exclusive engineering teams are rapidly growing. If you're a creative and autonomous engineer with a real passion for technology, we want to hear from you.