Senior Software Engineer, NCCL
NVIDIAJob Title
Senior Software Engineer, NCCL
Role Summary
Senior software engineer on the GPU communications and networking team responsible for designing and implementing high-performance communication runtimes and system software for GPU clusters used in deep learning and HPC.
The role works on communication libraries (e.g., NCCL, UCX), parallel programming interfaces, and system-level software that enables GPU-to-GPU and GPU-to-system interactions.
Experience Level
Senior - 5+ years of relevant experience.
Responsibilities
Core responsibilities include design, implementation, and maintenance of communication runtimes and related system software; specification work and prototyping to drive runtime and hardware features.
- Design, implement, and maintain optimized communication runtimes for deep learning frameworks (e.g., NCCL for PyTorch/TensorFlow) and HPC interfaces (e.g., UCX for MPI/OpenSHMEM).
- Participate in and contribute to parallel programming interface specifications (MPI, OpenSHMEM).
- Design and maintain system software enabling GPU-to-GPU and GPU-to-host interactions.
- Create proofs-of-concept to evaluate programming model extensions, runtime designs, and hardware features.
- Collaborate across teams in a multinational, multi-time-zone environment.
Requirements
Must-have technical skills and experience.
- 5+ years of relevant software engineering experience (see Experience Level).
- Excellent C/C++ programming and debugging skills.
- Strong Linux experience.
- Expert understanding of computer system architecture and operating systems.
- Experience with parallel programming interfaces and communication runtimes.
- Ability to communicate and work effectively across time zones and cultures.
Nice-to-have
- CUDA programming experience and familiarity with NVIDIA GPUs.
- Knowledge of high-performance networks (InfiniBand, iWARP, etc.).
- Experience with HPC applications and deep learning frameworks (PyTorch, TensorFlow).
- Proven collaborative and influencing skills in matrix environments.
Education Requirements
M.S. or Ph.D. in Computer Science, Computer Engineering, or a closely related technical field, or equivalent practical experience.
About the Company
Company: NVIDIA
Headquarters: Santa Clara, California, USA
NVIDIA is a global leader in accelerated computing, renowned for its innovative solutions in AI and digital twins that transform diverse industries. The company specializes in networking technologies, providing end-to-end InfiniBand and Ethernet solutions for servers and storage that optimize performance and scalability. NVIDIA serves sectors such as high-performance computing, enterprise data centers, and cloud computing, constantly reinventing its products and services to stay ahead in the market.
