Hybrid Senior Software Engineer - High Performance Computing Senior Software Engineer - High Performance Computing with verification
NVIDIA · Switzerland, Svizzera · Hybrid
About the job
What You Will Be Doing
- Creating proof-of-concepts to evaluate and motivate extensions in programming models (MPI, OpenSHMEM, PGAS), new designs in runtimes, and new features in the network hardware.
- Research, design and implement features for HPC communication middleware (Open MPI, UCX, UCC), and Deep Learning frameworks such as TensorFlow/PyTorch.
- Participating in and contributing to parallel programming interface specifications like MPI/OpenSHMEM.
- Research, design and develop hardware features relevant for scientific, Deep learning, and data-intensive workloads.
- Ph.D., in computer science, computer engineering, or a closely related field (or equivalent experience).
- 2+ years of experience in parallel programming models, and/or network architecture.
- Strong programming and software development skills, minimum 4 years of programming experience is required
- 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.
- Deep understanding of technology and passionate about what you do.
- Strong collaborative and interpersonal skills, specifically a proven ability to effectively guide and influence within a dynamic environment.
- Previous experience in ONE or more of the following areas:
- Experience designing communication middleware for high-performance computing systems, including InfiniBand, DPUs, Ethernet, and Shared Memory;
- Background with implementing communications libraries, particularly MPI, OpenSHMEM, or PGAS;
- Programming models for emerging architectures including hierarchical heterogeneous memory systems and accelerators.