Software Engineer
You will develop, test, and document a Collectives Communication Library for new AI hardware accelerators. You will collaborate on features, troubleshoot complex issues, integrate hardware with the AI ecosystem, and participate in agile development within a scrum team.
Responsibilities
- Implement the Collectives Communication Library
- Test the Collectives Communication Library
- Document the Collectives Communication Library
- Collaborate with teams to design and test features
- Troubleshoot and resolve complex technical issues
- Integrate new hardware with the AI ecosystem
- Participate in agile development
Requirements
- Experience in software development using C++
- Experience with Python and C programming
- Good problem-solving skills and ability to debug complex issues
- Experience with Boost.Test and Google Test
- Experience with CMake, Make, and Ninja
- Strong understanding of Git
- Experience with RDMA networking libraries such as libibverbs or libfabric
- Knowledge of multithreading and parallel computing
- Knowledge of inter-process communication techniques
- Experience with CI/CD pipelines
- Experience with communication libraries such as NCCL or MPI
- Knowledge of machine learning frameworks such as PyTorch
- Knowledge of modern C++ standards 17/20
Benefits
- Annual leave
- Medical health plans
- Dental health plans
- Gym card
- Employee pension matched up to 4%