Job Summary

As a Senior Software Engineer in the Analysis Tools Team you will drive the effort to design and develop profiling tools to help users optimise their applications on single processors and large computing clusters. The ideal candidate will have extensive experience in designing, developing, and maintaining complex software systems involving custom hardware. You will be responsible for leading development efforts, mentoring junior engineers, and driving technical excellence in our projects.

The Team

The Analysis Tools team builds profiling tools to help users optimise their applications for Graphcore hardware. The team is responsible for collecting profiling information from the Graphcore hardware and software, processing the profiling data and presenting the profiling information to the user via command line tools and graphical applications.

Responsibilities and Duties

  • Technical leadership on profiling software design.
  • Mentoring junior engineers and promoting an environment of continuous learning and improvement.
  • Understanding the Graphcore platform, how it can be profiled and how it is presented to the user.
  • Design, development and testing of features for profiling.
  • Fixing bugs and supporting customers.

Candidate Profile

Essential skills:

  • Experience of developing complex software solutions using a systems language (C, C++, Rust).
  • Understanding of system architecture, memory management, multithreading, and hardware utilisation.
  • Excellent problem-solving skills and ability to debug and resolve complex issues.
  • Strong communication and collaboration skills, with the ability to influence stakeholders and peers.
  • Proficiency with version control (Git).
  • Experience working in Agile environment and iterative development.

Desirable skills:

  • Experience with performance profiling tools.
  • Experience with front-end development using TypeScript and/or modern frameworks (ideally React).
  • Experience with relational databases for profiling or data collection.
  • Experience with large computing clusters and their performance monitoring ecosystems.
  • Knowledge of machine learning frameworks (ideally PyTorch).
  • Knowledge of continuous integration/continuous delivery pipelines and build tools.

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.

Apply for this Job

* Required
resume chosen  
(File types: pdf, doc, docx, txt, rtf)
cover_letter chosen  
(File types: pdf, doc, docx, txt, rtf)


UK Demographic Data

We take pride in our commitment to creating an inclusive and diverse workplace. As part of our recruitment process, we ask for confidential diversity data from all applicants. This data will be anonymised so that no personal identification information will be collected, and is retained for statistical purposes only and is not attached to your application. Your responses to the following three questions will remain confidential and will not impact or be used in any way in regards to your application. We are only using this data to improve our hiring process to be inclusive of all diversity backgrounds.

I identify my gender as (Select one) *





What is your ethnicity? (Select one) *







Do you consider yourself to have a disability? (Select one) *




Enter the verification code sent to to confirm you are not a robot, then submit your application.

This application was flagged as potential bot traffic. To resubmit your application, turn off any VPNs, clear the browser's cache and cookies, or try another browser. If you still can't submit it, contact our support team through the help center.