Senior Software Development Engineer - GPU Networking
AMD - Advanced Micro Devices
Munich, Germany
THE ROLE:
As a GPU network software engineer you will design, implement, and test features in communication libraries, middleware, and frameworks to provide best in class support for GPU applications running high performance computing and machine learning workloads at scale. You will work with technical experts within AMD, our partners, and the open-source community to implement these features as part of AMD’s open source ROCm stack for GPU computation.
THE PERSON:
You are accustomed to working in a dynamic, geographically distributed agile team, where partnership and collaboration are paramount. You possess excellent written and verbal communication skills, and strong attention to detail. You are results-oriented and accustomed to tight deadlines and changing priorities. Most importantly, you are constantly thinking of ways to improve performance of multi-node GPU applications.
KEY RESPONSIBILITIES:
- Design, implement, and test features to enhance GPU support in communication libraries, middleware and frameworks;
- Benchmark, profile and optimize code to maximize performance of multi-node GPU applications;
- Deliver high-quality code and documentation following best practices for open-source software development;
- Work with key technical experts at our customers, across AMD, and with our industry partners in the Ultra Ethernet Consortium and Ultra Accelerator Link Consortium to advance scale out and scale-up software and hardware solutions.
PREFERRED EXPERIENCE:
- Strong background developing system software in C/C++;
- Experience with at least one of the following:
- Implementing communication middleware like MPI/SHMEM;
- Implementing lower-level communication frameworks like UCX and libfabric, or development using RDMA APIs;
- Development and optimization of communication collective algorithms (e.g. AllReduce).
- Familiarity with GPU programming in HIP or CUDA;
- In-depth knowledge of best practices in software development, including testing, profiling, debugging, documentation, version control, issue tracking, and planning;
- Proven track record contributing to open-source projects.
ACADEMIC CREDENTIALS:
- B.Sc. or B.Eng. degree in Computer Science, Electrical Engineering, or equivalent;
- Advanced degrees, such as M.Sc., M.Eng., Ph.D. are preferred.
Apply Now
Don't forget to mention EuroTechJobs when applying.