- We are seeking a software developer to join our communication runtimes team to develop and contribute software features and optimizations to multiple communication libraries such as Intel SHMEM, Intel MPI, MPICH and Intel oneCCL
- Intel SHMEM allows developers to make communications calls directly with SYCL kernels, enabling distributed and high-performance computing (HPC) and artificial intelligence (AI) applications to scale beyond a single GPU
- Intel MPI is a closed source implementation of the Message Passing Interface (MPI) standard for parallel computing systems that span from small multi-core systems to the world's largest super computers
- Similarly, MPICH is an open-source implementation of the MPI standard
- oneCCL is the collective communication library used by Deep Learning Frameworks
- All of our libraries focus on maximizing performance for the Intel family of products
- In this role, you will have an opportunity to build expertise with the latest Intel GPUs and CPUs used in the data center, work directly with scientists and engineers working on the Aurora super computer at the Argonne National Labs, and make meaningful contributions that improve scientific computing and machine learning
In this role you will:
- Design, develop, and maintain features and optimizations for Intel SHMEM, Intel MPI, MPICH, and oneCCL libraries. - Collaborate with cross-functional teams to define software requirements and specifications - Optimize software to meet performance requirements, ensuring low latency, high bandwidth and high reliability We are looking for software engineers that understand multiple levels of the communications stack, are self-driven, have a high motivation to learn and want to use your outstanding analytical skills to make an impact.
Qualifications: Candidates must have the following:
- B.Tech/BE, M.S/M.Tech or PhD. in Computer Science, Computer Engineering, Electrical Engineering or related academic background - Experience developing in Linux environment - Proficiency in C and C++ programming - Experience of at least 5 years in SW development - Excellent written and verbal communication skills
In addition, the best candidates will have experience in several of these areas:
- Background or experience developing software for GPUs - Background or knowledge in Networking - Experience with multithreaded programming - Experience with runtime performance optimizations - Experience in distributed computing, HPC or collective libraries (MPI, oneCCL/NCCL, SHMEM)