Back to jobs

Staff Software Engineer - ML Kernels & Runtime

Gdańsk, Pomeranian Voivodeship, Poland

Salary Range: PLN 350,700 - 474,400 PLN

Subject to alignment to the responsibilities and duties of the role

About Graphcore 

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.

Job Summary  

As the Staff Software Engineer, you will be responsible for the development of new and support existing kernels for liner algebra operations on a new generation of AI hardware. You will provide technical leadership within the team, helping to define approaches, review designs, and guide complex engineering decisions.

The Team 

This is an exciting opportunity to join an expanding team at Graphcore. Our ML Kernels & Runtime team are responsible for delivering high performance compute library to help customers gain the maximum performance from AI hardware. 

Responsibilities and Duties 

  • Design and implement kernels for linear algebra and tensor ops (GEMM, batched GEMM, convolutions, reductions, elementwise and fused operations) in C++ 
  • Provide technical leadership within the team, helping to define approaches, review designs, and guide complex engineering decisions

  • Own performance and correctness - add microbenchmarks, regression tests, numerics validation 
  • Profile and optimise across for next generation of AI hardware - threading, cache locality, memory layout, and kernel launch efficiency. 
  • Debug issues, resolve bugs and generally improve the quality and functionality of the product 
  • Actively engage in and support Agile ways of working within the team 
  • Mentor colleagues within the team, sharing knowledge and providing guidance where appropriate 

Candidate Profile 

Essential 

  • Excellent programming and scripting skills using C++ and Python 
  • Understanding of processor architectures and profiling on Linux 
  • Proven track record of technical leadership, including leading technical work, influencing engineering direction, mentoring others, and driving high-quality delivery

  • Ability to operate effectively at Staff level, balancing hands-on implementation with broader technical ownership and team impact

  • Possess excellent written and oral communication skills, good work ethics, high sense of team-work 

Desirable 

  • Strong command of algorithmic performance - vectorisation, memory hierarchy, threading, lock-free patterns 
  • Experience testing numerical/performance-sensitive code

  • Hands-on with reproducibility/determinism, tolerance design, and benchmarking

  • Hands-on with at least one BLAS/DNN stack and able to read/extend kernels 
  • Comfort with CPU micro-optimisations and numerical stability/trade-offs across FP32/FP16/BF16/FP8 
  • Experience integrating native code into PyTorch or similar (custom ops, extensions, dispatch keys) 
  • ABI/API stability and packaging on Linux system (manylinux, wheels) 

Benefits

In addition to a competitive salary, Graphcore offers annual leave policy, medical and dental health plans, a gym card, and employee pension (matched up to 4%). We review our benefits on a yearly basis to ensure we offer a valuable and rewarding benefits programme to our employees. 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.

 

Create a Job Alert

Interested in building your career at Graphcore? Get future opportunities sent straight to your email.

Apply for this job

*

indicates a required field

Phone
Resume/CV*

Accepted file types: pdf, doc, docx, txt, rtf

Cover Letter

Accepted file types: pdf, doc, docx, txt, rtf