At a Glance
- Tasks: Design and implement cutting-edge OS Kernel and Device Driver software using C/C++/Python.
- Company: Join Graphcore, a leader in AI compute innovation with a collaborative culture.
- Benefits: Enjoy flexible working, generous leave, private medical insurance, and a matched pension plan.
- Other info: Inclusive environment with excellent career growth opportunities and support for diverse backgrounds.
- Why this job: Make a real impact on the future of AI while working with top experts in the field.
- Qualifications: Experience in software development, especially with OS Kernel and Device Driver on Linux or Windows.
The predicted salary is between 50000 - 70000 € per year.
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 datacentre scale. 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.
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
- 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 systems
- Good understanding of lower‑level software stack and interactions with the hardware layer
- Possess effective problem‑solving skills, familiar with some 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
- Experience developing firmware or drivers for GPUs or other accelerators
- 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.
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 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.
System Software Engineer Cambridge, UK in London employer: graphcore
Graphcore is an exceptional employer, offering a dynamic work environment in Cambridge where innovation thrives. With a strong focus on employee growth, we provide opportunities to work alongside industry experts in AI and semiconductor technology, while enjoying benefits such as flexible working, comprehensive health plans, and a commitment to inclusivity. Join us to make a meaningful impact in the future of AI compute and be part of a collaborative team that values your contributions.
StudySmarter Expert Advice🤫
We think this is how you could land System Software Engineer Cambridge, UK in London
✨Tip Number 1
Network like a pro! Reach out to folks in the industry, especially those at Graphcore. A friendly chat can open doors that a CV just can't.
✨Tip Number 2
Show off your skills! If you’ve got projects or contributions to open-source software, make sure to highlight them. It’s a great way to demonstrate your expertise in C/C++ and kernel development.
✨Tip Number 3
Prepare for technical discussions! Brush up on your knowledge of OS Kernel and Device Driver development. Being able to discuss your experience confidently will impress the team.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining the Graphcore family.
We think you need these skills to ace System Software Engineer Cambridge, UK in London
Some tips for your application 🫡
Tailor Your CV:Make sure your CV is tailored to the System Software Engineer role. Highlight your experience with C/C++ and any relevant projects you've worked on, especially those involving OS Kernel and Device Driver development.
Craft a Compelling Cover Letter:Your cover letter should tell us why you're excited about working at Graphcore. Share your passion for AI compute and how your skills align with our mission to build cutting-edge technology.
Showcase Your Problem-Solving Skills:In your application, give examples of how you've tackled complex problems in software development. We love seeing candidates who can think critically and come up with innovative solutions!
Apply Through Our Website:We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it shows us you’re keen to join our team!
How to prepare for a job interview at graphcore
✨Know Your Stuff
Make sure you brush up on your C/C++ and Python skills, especially in the context of OS Kernel and Device Driver development. Familiarise yourself with the specific technologies mentioned in the job description, like PCIe and GPU drivers, so you can speak confidently about your experience.
✨Show Your Problem-Solving Skills
Prepare to discuss specific examples where you've tackled complex problems in software development. Think about times when you used debug and performance analysis tools effectively. This will demonstrate your hands-on experience and ability to contribute to the team.
✨Engage in Technical Discussions
During the interview, don’t hesitate to ask questions or share your thoughts on technical topics. This shows that you're not just a passive participant but an active contributor who can engage with both software and hardware engineers.
✨Understand Agile Development
Since the role involves working in a scrum team, be prepared to discuss your experience with agile methodologies. Share how you've collaborated with others in fast-paced environments and how you adapt to changing requirements.