At a Glance
- Tasks: Design and implement OS Kernel and Device Driver software using C/C++/Python.
- Company: Join Graphcore, a leading tech company in Bristol with an inclusive culture.
- Benefits: Enjoy flexible working, generous leave, private medical insurance, and healthy snacks.
- Other info: Dynamic team environment with opportunities for career growth and innovation.
- Why this job: Make a real impact on cutting-edge products while collaborating with top engineers.
- Qualifications: Experience in software development, especially with OS Kernel and Device Drivers.
The predicted salary is between 50000 - 65000 € per year.
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.
Candidate Profile
- 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.
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.
EEO Statement
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 New Bristol, UK employer: graphcore
Graphcore is an exceptional employer located in the vibrant city of Bristol, offering a dynamic work culture that fosters innovation and collaboration. With a strong commitment to employee growth, we provide extensive benefits including flexible working arrangements, generous leave policies, and comprehensive health plans, all within an inclusive environment that values diverse backgrounds and experiences. Join us to be part of a cutting-edge team where your contributions directly impact the development of advanced technology solutions.
StudySmarter Expert Advice🤫
We think this is how you could land System Software Engineer New Bristol, UK
✨Tip Number 1
Network like a pro! Reach out to folks in the industry, especially those at Graphcore. A friendly chat can sometimes lead to opportunities that aren’t even advertised yet.
✨Tip Number 2
Show off your skills! If you’ve got a GitHub or similar portfolio, make sure it’s up to date. Share projects that highlight your experience with C/C++ and kernel development – it’s a great way to stand out.
✨Tip Number 3
Prepare for the interview by brushing up on your problem-solving skills. Expect technical questions that dive into OS Kernel and Device Driver development. Practise explaining your thought process clearly!
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, we love seeing candidates who take that extra step.
We think you need these skills to ace System Software Engineer New Bristol, UK
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 involving OS Kernel and Device Driver development. We want to see how your skills match what we're looking for!
Show Off Your Projects:Include any personal or professional projects that showcase your programming skills, especially those related to kernel drivers or hardware integration. This gives us a glimpse of your hands-on experience and problem-solving abilities.
Be Clear and Concise:When writing your application, keep it clear and to the point. Use bullet points where possible to make it easy for us to read through your qualifications and experiences. We appreciate straightforward communication!
Apply Through Our Website:Don’t forget to apply through our website! It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it’s super easy to do!
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. Be ready to discuss your past experiences with these languages and how they relate to the role.
✨Understand the Hardware
Familiarise yourself with the hardware layer and how it interacts with lower-level software. If you've worked with PCIe, GPUs, or SoCs, be prepared to share specific examples of your experience and how it can benefit the team.
✨Agile Mindset
Since the role involves working in an agile environment, think about your previous experiences in scrum teams. Be ready to discuss how you contributed to fast-paced development and any challenges you faced along the way.
✨Communicate Clearly
Effective communication is key! Prepare to engage in technical discussions with both software and hardware engineers. Think of examples where you successfully collaborated with others to solve problems or improve processes.