Senior Software Architect - Deep Learning and HPC Communications
Santa Clara, CA (On-site)
Posted 21 hrs ago
Top 1% of applicants do these two things.
The other 99% submit and hope. You're about to do something different.
Job Description
DL and HPC applications have a 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. Are you ready to build the new and innovative technologies that will help realize NVIDIA's vision?
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)
- 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.
- 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.
You will also be eligible for equity and benefits.
Applications for this job will be accepted at least until August 7, 2026.
This posting is for an existing vacancy.
NVIDIA uses AI tools in its recruiting processes.
NVIDIA is committed to fostering an inclusive 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.
I needed a portfolio and a static webpage didn't meet today's standards. If I have this problem, others do too. What I would normally make for myself, I now make open-source on my portfolio to distribute:https://github.com/thomas-to-bcheme/thomas-to-bchemeThis project and it's phases exemplifies 0 to 1, 1 to 1, 1 to many, and many to many, as I distribute & provide support (software) engineers to the minimally viable product/portfolio which now includes an RAG Agent as the industry shifts more downstream to (AI/ML/Dev)Ops: deployment, monitoring & evaluations, given the speed of iteration & coding through (native) AI tools (e.g CLI & IDE + no/low code prototyping).
