Graphcore

Staff Software Engineer (ML QA)

4d ago
EuropeLead
Graphcore

Staff Software Engineer (ML QA)

4d ago
EuropeLeadsoftware architectureautomationci/cd

Experienced software engineer focusing on testing and validating complex machine learning software stack, emphasizing software architecture, automation, and engineering best practices.

Responsibilities

  • Design, implement, and maintain robust test infrastructure and automation for a complex ML software stack.
  • Architect and evolve test frameworks and tooling with a focus on scalability, maintainability, and developer experience.
  • Build and maintain CI/CD pipelines targeting simulators, emulators (e.g. QEMU), and physical hardware.
  • Create representative ML workloads and gain insights from their execution. (Numerical accuracy, performance analysis and benchmarking).
  • Work closely with all Software development teams, supporting a culture of quality, security and maintainability.
  • Review code and designs, setting a high bar for software engineering best practices.
  • Mentor and support junior engineers, helping raise the overall technical capability of the team.
  • Evaluate existing test strategies and infrastructure, identifying gaps and driving improvements aligned with team and organizational goals.  

Conditions

  • 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
  •  
  • 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

Other

  • 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
  • Applicants for this role should have strong experience designing, developing, and maintaining high-quality software systems. The role focuses on testing and validating a complex machine learning software stack, with particular emphasis on software architecture, automation, and engineering best practices.
  • The ideal candidate is an experienced software engineer who values code quality, testability, and long-term maintainability, and enjoys building systems that other engineers rely on. This person will be comfortable working across large codebases, contributing to CI/CD infrastructure, and shaping technical direction through thoughtful design and mentoring in a technically demanding environment spanning ML frameworks, infrastructure, and AI accelerator hardware
  • The ML QA team is composed of highly skilled software engineers with a strong focus on automation, software quality, and data-driven validation. The team works closely with  industry-standard machine learning frameworks and models , contributing to upstream open-source projects and collaborating across the wider software organization.  
  • Operating in a fast-paced environment, the team plays a critical role in ensuring reliability, performance, and maintainability across the ML software stack, helping to deliver robust and high-quality products to customers.  
  • Experience in production-quality software engineering roles.
  • Strong software design and architecture skills, with experience working on large or complex systems.
  • Strong proficiency in Python, including experience building and maintaining production codebases.
  • Solid experience with CI/CD systems and automated testing (preferably GitHub-based workflows).
  • Experience working in Linux environments.
  • Familiarity with C or C++, with the ability to read, debug, and reason about low-level code when needed.
  • Proven ability to mentor junior engineers and influence engineering practices within a team.
  • Strong problem-solving skills and a proactive, self-directed approach to work.
  • Bachelor/Master's/PhD or equivalent experience in Computer Science, Maths, Machine Learning, Data Science, or related field.  
  • Exposure to machine learning frameworks such as PyTorch, JAX, Triton, TensorFlow
  • Experience with distributed workload management systems such as Kubernetes, VLLM, Keras or MLOps pipelines
  • Experience working with hardware simulators or emulators (e.g. QEMU).
  • Experience developing for or working with FPGA-based systems.
  • Experience with people management or mentoring