System Software Engineer

Graphcore — United Kingdom · Posted ~1 day ago

Mid Full-time

Skills

system software development kernel driver development user-space development low-level programming software testing kernel drivers user-space driver libraries system software

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary

Join a system software team working on the foundations of advanced AI computing systems. You will contribute to planning, designing, implementing, and testing low-level kernel drivers and user-space libraries, collaborating with engineers across the hardware and software stack.

Highlights

Work at the intersection of software, hardware, and AI computing on challenging low-level systems. The role provides opportunities to design, implement, and test drivers and system libraries as part of an expert engineering team.

Description

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 languagesParticipate in agile development – working as part of a scrum team to develop the right software at paceCommunicate effectively and contribute regularly to technical discussions with your peers in software and hardware engineering, with architects and other stakeholdersHands-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 Industry experience in software development using programming languages such as C/C++. Familiar with OS Kernel and Device Driver development and deployment on Linux or Windows systemsGood understanding of lower-level software stack and interactions with the hardware layerPossess effective problem-solving skills, familiar with some debug and performance analysis tools and techniquesExperience with one or more of the following: PCIe, CPU, device drivers, SoC, firmware, and hardware/software integration Desirable Experience developing firmware or drivers for GPUs or other acceleratorsExperience 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