Senior Software Engineer
Posted Updated
- Build the debugger that helps developers unlock more from Graphcore AI processors
- As a Senior Software Engineer in our Debugger team, you will help define and implement Graphcore’s next-generation debugging capability. Your work will support developers building and optimising workloads on our advanced AI processors
- You will adapt and expand debugger functionality, resolving complex issues across software and hardware boundaries. The tools you build will help internal and external users understand behaviour, improve performance and move faster
- You will work closely with software, firmware, hardware, partner and customer teams. This role offers rare depth across processor architecture, toolchains and real developer workflows
- Work happens close to the technology, with engineers expected to investigate deeply, speak up and take ownership. The team uses Agile ways of working to keep progress visible and decisions moving
- You will collaborate across software, firmware and hardware teams to identify debug feature opportunities. Decisions are shaped by technical evidence, user needs and the judgement of engineers closest to the problem
Benefits
- Work-Life Balance: We believe you should have a good work-life balance. Everyone’s situation is different, so we offer flexible working arrangements and start and finish times, allowing you to choose when to work from home or come into the office
- Healthcare: We offer Private Medical Insurance (PMI) to our employees to help them take care of their health and that of their loved ones
- Pension: We believe that our employees deserve the best when it comes to planning for their future
- Income Protection: Graphcore understands that unforeseen circumstances can happen, and we want to ensure our employees have the necessary financial security in place
- Progression: We prioritise learning and development as an integral part of our culture at Graphcore. Our Talent Development team is dedicated to equipping all our employees with the necessary tools, resources, and support to enhance their skills and reach their full potential in their careers
- Wellbeing: We want to ensure that our employees have the resources and support they need to prioritise their health and wellbeing
- Strong understanding of processor architectures
- Ability to communicate clearly across software, firmware and hardware teams
- A proactive, self-driven approach to improving product quality and functionality
- Strong low-level programming skills in C, C++ or Rust
- Experience using debuggers to resolve complex program issues
- While we have outlined a set of requirements, we value transferable skills and diverse experiences. We also welcome engineers returning to the profession after a career break, including through returnship routes
- Familiarity with compiler toolchains, debugging protocols, Python, IDE development or PyTorch
