Senior Software Engineer
Location: Gdańsk, Pomeranian Voivodeship, Poland
Department: Collectives
Salary Range: PLN 303,800 - 411,000
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 Simulator team is responsible for building large-scale collective communication simulator for new AI hardware Graphcore is working on. The simulator allows users to in depth analyse communication algorithms in various network topologies.
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
Benefits
In addition to a competitive salary, Graphcore offers annual leave policy, medical and dental health plans, a gym card, and employee pension (matched up to 4%). We review our benefits on a yearly basis to ensure we offer a valuable and rewarding benefits programme to our employees. We welcome people of different backgrounds and experiences; we’re committed to building an inclusive work environment that makes Graphcore a great home for everyone. We offer an equal opportunity process and understand that there are visible and invisible differences in all of us. We can provide a flexible approach to interview and encourage you to chat to us if you require any reasonable adjustments.
There are more than 50,000 engineering jobs:
Subscribe to membership and unlock all jobs
Engineering Jobs
60,000+ jobs from 4,500+ well-funded companies
Updated Daily
New jobs are added every day as companies post them
Refined Search
Use filters like skill, location, etc to narrow results
Become a member
🥳🥳🥳 452 happy customers and counting...
Overall, over 80% of customers chose to renew their subscriptions after the initial sign-up.
To try it out
For active job seekers
For those who are passive looking
Cancel anytime
Frequently Asked Questions
- We prioritize job seekers as our customers, unlike bigger job sites, by charging a small fee to provide them with curated access to the best companies and up-to-date jobs. This focus allows us to deliver a more personalized and effective job search experience.
- We've got over 200,000 jobs from 15,000+ vetted companies. No fake or sleazy jobs here!
- We aggregate jobs from 15,000+ companies' career pages, so you can be sure that you're getting the most up-to-date and relevant jobs.
- We're the only job board *for* software engineers, *by* software engineers… in case you needed a reminder! We add thousands of new jobs daily and offer powerful search filters just for you. 🛠️
- Every single hour! We add 2,000-3,000 new jobs daily, so you'll always have fresh opportunities. 🚀
- Typically, job searches take 3-6 months. EchoJobs helps you spend more time applying and less time hunting. 🎯
- Check daily! We're always updating with new jobs. Set up job alerts for even quicker access. 📅
What Fellow Engineers Say
