Software Engineering Manager - GPU Communications Libraries
at Nvidia
📍 Santa Clara, United States
$180,000-339,200 per year
SCRAPED
Used Tools & Technologies
Not specified
Required Skills & Competences ?
Software Development @ 4 Go @ 4 Linux @ 4 TensorFlow @ 4 Leadership @ 4 Communication @ 4 Networking @ 4 Parallel Programming @ 4 Product Management @ 4 Debugging @ 4 Technical Leadership @ 4 System Architecture @ 7 PyTorch @ 4Details
We are the GPU Communications Libraries and Networking team at NVIDIA. We deliver communication libraries like NCCL, NVSHMEM, UCX for Deep Learning and HPC. DL and HPC applications have a huge compute demand already and run on scales which go up to tens of thousands of GPUs. The GPUs are connected with high-speed interconnects (eg. NVLink, PCIe) within a node and with high-speed networking (eg. Infiniband, Ethernet) across the nodes.
Communication performance between the GPUs has a direct impact on the end-to-end application performance; and the stakes are even higher at huge scales! We are looking for a technical leader to manage our NVSHMEM and UCX libraries. This is an outstanding opportunity to push the limits on the state-of-the-art and deliver platforms the world has never seen before. Are you ready to contribute to the development of innovative technologies and help realize NVIDIA's vision?
Responsibilities
- Lead, mentor, and grow your library engineering team and be responsible for the planning and execution of projects as well as the quality, and performance of your libraries.
- This is a technical leadership role so you will participate in feature design and implementation.
- Interact with internal and external partners and researchers to understand their use cases and requirements. Collaborate with engineering teams, program and product management, and partners to define the product roadmap.
- Continuously review and identify improvement opportunities in established processes, infrastructure, and practices to ensure the teams are executing in the most efficient and transparent manner.
Requirements
- 10+ overall years of experience in the software industry with specialization in HPC networking or system software.
- 4+ years of management experience.
- BS, MS, or Ph.D. in CS, CE, EE (related technical field) or equivalent experience.
- Prior systems software or communication runtime or high-performance networking software development experience with a successful track record of taking several complex software features or products through the full product life cycle.
- Strong understanding of computer system architecture, operating systems principles (aka systems software fundamentals), HW-SW interactions and performance analysis/optimizations.
- Excellent C/C++ programming and debugging skills in Linux.
- Experience balancing multiple projects with competing priorities.
- Flexibility to work and communicate effectively across different teams and timezones.
Ways to stand out from the crowd:
- Experience with parallel programming models (MPI, SHMEM) and at least one communication runtime (MPI, NCCL, NVSHMEM, OpenSHMEM, UCX, UCC). Experience with programming using CUDA, MPI, OpenMP, OpenACC, pthreads.
- Background with RDMA, high-performance networking technologies (InfiniBand, RoCE, Ethernet, EFA), network architecture and network topologies. Knowledge of HPC and ML/DL fundamentals.
- Experience with Deep Learning Frameworks such PyTorch, TensorFlow, etc.
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. 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. NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people on the planet working for us. If you're creative and autonomous, we want to hear from you!
The base salary range is 180,000 USD - 339,250 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.