
Graphcore · Bristol
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 creati...
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
As a member of the drivers and utilities team you will contribute to the planning, design, implementation and testing of low
level kernel drivers and user space driver library code. You will be part of one of the two teams in the system software
department (the firmware team being the other one) and report to the drivers and utilities team manager.
The drivers and utilities team forms part of the system software group – working closely with both software engineers developing
our Poplar SDK and with silicon and hardware engineers developing Graphcore’s IPU solution. The drivers and utilities team
develop custom control software on the host in kernel and user space. Our solutions enable our customers to get maximum
performance and utility for our cutting-edge products.
programming languages
with architects and other stakeholders
fast time to market delivery
Excellent cultural awareness is essential.
Desirable
In addition to a competitive salary, Graphcore offers flexible working, a generous annual leave policy, private medical insurance
and health cash plan, a dental plan, pension (matched up to 5%), life assurance and income protection. We have a generous parental
leave policy and an employee assistance programme (which includes health, mental wellbeing, and bereavement support). We offer a
range of healthy food and snacks at our central Bristol office and have our own barista bar! 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.
Applicants for this position must hold the right to work in the UK. Unfortunately at this time, we are unable to provide visa
sponsorship or support for visa applications
Graphcore is one of the world’s leading innovators in Artificial Intelligence compute. It is developing hardware, software and systems infrastructure that will unlock the next generation of AI breakthroughs and power the widespread adoption of AI solutions across every industry. As part of the SoftBank Group, Graphcore is a member of an elite family of companies responsible for some of the world’s most transformative technologies. Together, they share a bold vision: to enable Artificial Super Intelligence and ensure its benefits are accessible to everyone. Graphcore’s teams are drawn from diverse backgrounds and bring a broad range of skills and perspectives. A melting pot of AI research specialists, silicon designers, software engineers and systems architects, Graphcore enjoys a culture of continuous learning and constant innovation. Join our dynamic and ambitious team as a Staff System Software Engineer in Test – Firmware at Graphcore Ltd. You will take on a meaningful role in advancing AI technology’s future. This position gives you the opportunity to build innovative AI solutions with a team dedicated to superior performance and world-class achievements. RESPONSIBILITIES * Act as a technical authority for crafting test features. * Contribute to test infrastructure build to ensure scalability and reproducibility. * Influence technical development both within the immediate team and beyond. * Build, implement, and complete high-quality tests to ensure the team has a high-quality gate for the production firmware. * Take ownership of technically challenging areas and ensure near 100% coverage. * Perform initial triage and debugging of bugs detected using hardware and analysers. * Review and improve code, build, and implementation processes across the team. * Collaborate closely with lower and upper stack teams to understand use-cases and ensure all requirements are met. * Develop acceptance tests covering use-cases across teams using our firmware. * Communicate complex technical concepts clearly to both expert and non-expert audiences. * Ensure correctness, robustness, security, and maintainability of firmware solutions. * Contribute to improvements to validation frameworks, CI/CD systems, automated testing, and firmware packaging. * Drive root-cause investigations and long-term corrective actions for all incoming issues. * Mentor junior engineers within the team. * Raise quality and coding standards through mentorship, established guidelines, and setting an example. * Contribute to long-term improvements in culture and team ceremonies. REQUIREMENTS * 10+ years of experience in firmware qualification. * Experience in handling real-time embedded systems and intricate boot logic. * Experience in handling hardware and debuggers. * Strong understanding of modern silicon and hardware interfaces (I2C, I3C, SMBus, SPI, PCIe, DDR, power management, etc.). * Experience with CI/CD, build tools, and modern testing practices. * Excellent problem-solving skills and a track record of working with complex cross-layer issues. * Strong communication skills and the ability to detail technical processes effectively. DIFFERENTIATORS * Experience handling server-class systems. * Experience in Zephyr OS. * Experience handling OpenBMC. At Graphcore Ltd., we provide an encouraging environment where your talents will be challenged and grown. We strive to ensure that everyone is given the chance to contribute to our world-class solutions and fulfill their potential. Join us in driving forward AI innovation and leave a lasting mark! 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.
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 member of the drivers and utilities team you will contribute to the planning, design, implementation and testing of low level kernel drivers and user space driver library code. You will be part of one of the two teams in the system software department (the firmware team being the other one) and report to the drivers and utilities team manager. THE TEAM The drivers and utilities team forms part of the system software group – working closely with both software engineers developing our Poplar SDK and with silicon and hardware engineers developing Graphcore’s IPU solution. The drivers and utilities team develop custom control software on the host in kernel and user space. Our solutions enable our customers to get maximum performance and utility for our cutting-edge products. RESPONSIBILITIES AND DUTIES * Design, implement, test and document OS Kernel and Device Driver software at the highest standard using C/C++/Python programming languages * Participate in agile development – working as part of a scrum team to develop the right software at pace * Communicate effectively and contribute regularly to technical discussions with your peers in software and hardware engineering, with architects and other stakeholders * Hands-on during key product development phases involving close working with hardware and silicon engineering groups to enable fast time to market delivery CANDIDATE PROFILE Essential: * Proven industry experience in software development using programming languages such as C/C++/Python * OS Kernel and Device Driver development and deployment experience in Linux or Windows systems * Good understanding of lower-level software stack and interactions with the hardware layer * Possess effective problem-solving skills, familiar with a full suite of debug and performance analysis tools and techniques * Experience with one or more of the following: PCIe, CPU, device drivers, SoC, firmware, and hardware/software integration * Proactive in obtaining engineering or management input to solve issues * Motivated to schedule own workload * Excellent written and verbal communication skills, work well within a multinational team and with multinational customers. Excellent cultural awareness is essential. Desirable * Experience developing firmware or drivers for GPUs. * Knowledge of CUDA or OpenCL * Experience working on upstreaming of kernel code / contributing to Linux kernel. * Exposure to integration with data centre / cloud service operations – for example integration with Kubernetes or open stack. BENEFITS In addition to a competitive salary, Graphcore offers flexible working, a generous annual leave policy, private medical insurance and health cash plan, a dental plan, pension (matched up to 5%), life assurance and income protection. We have a generous parental leave policy and an employee assistance programme (which includes health, mental wellbeing, and bereavement support). We offer a range of healthy food and snacks at our central Bristol office and have our own barista bar! 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. Applicants for this position must hold the right to work in the UK. Unfortunately at this time, we are unable to provide visa sponsorship or support for visa applications
SALARY RANGE: PLN 350,000 - 474,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 member of the drivers and utilities team you will contribute to the planning, design, implementation and testing of low level kernel drivers and user space driver library code. You will be part of one of the two teams in the system software department (the firmware team being the other one) and report to the drivers and utilities team manager. THE TEAM The drivers and utilities team forms part of the system software group – working closely with both software engineers developing our Poplar SDK and with silicon and hardware engineers developing Graphcore’s IPU solution. The drivers and utilities team develop custom control software on the host in kernel and user space. Our solutions enable our customers to get maximum performance and utility for our cutting-edge products. RESPONSIBILITIES AND DUTIES * Design, implement, test and document OS Kernel and Device Driver software at the highest standard using C/C++/Python programming languages * Participate in agile development – working as part of a scrum team to develop the right software at pace * Communicate effectively and contribute regularly to technical discussions with your peers in software and hardware engineering, with architects and other stakeholders * Hands-on during key product development phases involving close working with hardware and silicon engineering groups to enable fast time to market delivery CANDIDATE PROFILE Essential: * Proven industry experience in software development using programming languages such as C/C++/Python * OS Kernel and Device Driver development and deployment experience in Linux or Windows systems * Good understanding of lower-level software stack and interactions with the hardware layer * Possess effective problem-solving skills, familiar with a full suite of debug and performance analysis tools and techniques * Experience with one or more of the following: PCIe, CPU, device drivers, SoC, firmware, and hardware/software integration * Proactive in obtaining engineering or management input to solve issues * Motivated to schedule own workload * Excellent written and verbal communication skills, work well within a multinational team and with multinational customers. Excellent cultural awareness is essential. Desirable * Experience developing firmware or drivers for GPUs. * Knowledge of CUDA or OpenCL * Experience working on upstreaming of kernel code / contributing to Linux kernel. * Exposure to integration with data centre / cloud service operations – for example integration with Kubernetes or open stack. 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.