About the job
About Us
Graphcore stands at the forefront of innovation in Artificial Intelligence computing, crafting the hardware, software, and systems infrastructure that will pave the way for the next wave of AI advancements. Our mission is to power the extensive integration of AI solutions across various sectors.
As a proud member of the SoftBank Group, Graphcore is part of a distinguished network of companies that are shaping transformative technologies. Together, we share an ambitious goal: to foster Artificial Super Intelligence and ensure its advantages are accessible to all.
Our teams are composed of individuals from diverse backgrounds, bringing a rich variety of skills and viewpoints. This melting pot of AI researchers, silicon designers, software engineers, and systems architects cultivates a culture of continuous learning and relentless innovation.
Job Summary
The System Software group includes the Firmware team, the Drivers and Utilities team, and the System QA team. We are tasked with enabling all silicon and hardware platforms developed by our talented colleagues at Graphcore. Our objective is to create high-quality software and APIs that empower the broader software team to utilize our products efficiently and effectively. The Firmware and Drivers teams form the cornerstone of the Graphcore software stack, which serves as the foundation for all customer-facing systems.
The Team
The Drivers and Utilities team specializes in developing both kernel and user space software, enabling our customers to harness the full performance and utility of our unique hardware. We collaborate closely with the software engineering team responsible for our Poplar SDK, supporting machine learning applications, and with silicon and hardware engineers to maximize the potential of our Graphcore IPU solution.
Key Responsibilities
- Write code that adheres to Graphcore standards.
- Develop appropriate unit tests for all written code.
- Engage in code reviews both individually and collaboratively.
- Participate in Scrum ceremonies.
- Conduct manual testing on code developed by yourself and others.
- Maintain and troubleshoot our Continuous Integration system.
- Contribute to and engage in technical design discussions with team members.
Candidate Profile
Essential Qualifications
- Bachelor’s or Master’s Degree in Computer Science, Mathematics, Machine Learning, Data Science, or a related field.
- Demonstrated passion for software development and a strong understanding of programming fundamentals.
- Team-oriented mindset with excellent communication skills.

