Skip to main content
Back to jobs

Senior Software Engineer

External
Graphcore logoGraphcore · Gdańsk, Poland
Full-timeOn-site2d ago
AgileCI/CDGitGitHubGitHub ActionsGitLab
Cover LetterConnect

Prepare for this interview

Elite

AI-generated questions, company research, and talking points tailored to this role


Benefits

Health insuranceDental insuranceFlexible schedule

Additional Information

Salary Range: PLN 260,000 - 352,000 PLN Subject to alignment to the responsibilities and duties of the role About Graphcore At Graphcore, we're building the future of AI compute. We're a team of semiconductor, software and AI experts, with deep experience in creating the complete AI compute stack - from silicon and software to infrastructure at datacenter scale. As part of the SoftBank Group, backed by significant long-term investment, we are delivering key technology into the fast-growing SoftBank AI ecosystem. To meet the vast and exciting AI opportunity, Graphcore is expanding its teams around the world. We are bringing together the brightest minds to solve the toughest problems, in a place where everyone has the opportunity to make an impact on the company, our products and the future of artificial intelligence Job Summary As a Senior Software Engineer in the Collectives Simulator team, you will drive the design and development of a large-scale collective communication simulator that enables the analysis of network parameters and the efficient implementation of communication algorithms. The ideal candidate will have experience in designing, developing, and maintaining complex software systems involving custom hardware. You will be responsible for leading development efforts, mentoring junior engineers, and driving technical excellence in our projects. The Team The Collectives team is responsible for building the Collectives Communication library for new AI hardware Graphcore is working on. The library provides communication primitives optimized to achieve high bandwidth and low latency at very high scale. Responsibilities and Duties Designing, implementing, testing and documenting Collectives Simulator for new AI hardware Collaborating with other teams to design, implement and test new features Troubleshooting and resolving complex technical issues Ensuring seamless integration of new hardware with existing AI ecosystem Participating in agile development - working as part of a scrum team Candidate Profile Essential: Extensive experience in software development using C++ programming language Experience with Python and C programming Excellent problem-solving skills and ability to debug and resolve complex issues Strong knowledge of multithreading and inter-process communication (IPC) techniques for development of efficient concurrent applications Experience with unit testing frameworks such as Boost.Test and Google Test Proficiency with build tools such as CMake, Make and Ninja Strong understanding of version control systems (preferred Git) Ability to work within a multinational team and with multinational customers Excellent written and verbal communication skills Desirable Experience in development of SW simulators Experience with RDMA networking libraries (for example libibverbs, libfabric) Knowledge of multithreading and parallel computing concepts, including experience with parallel algorithms and optimization for AI/ML and HPC systems Experience with Continuous Integration/Continuous Delivery (CI/CD) pipelines, including setting up automated workflows and deployments (for example GitHub Actions, GitLab CI) Experience with communication libraries (for example NCCL, MPI) Knowledge of machine learning frameworks (for example PyTorch) Knowledge of modern C++ standards 17/20


Your Match

How well this role fits your profile.

Company Intel

What employees say

Worked at Graphcore? Share your experience

Interested in this role?

Apply on the company's website.

Cover LetterConnect