Senior Software Engineer - AI Compute Libraries & Performance
Role details
Job location
Tech stack
Job description
As a Senior Software Engineer, you'll build high-performance AI compute libraries for next-generation AI hardware, working on linear algebra, tensor operations, numerical correctness, and low-level performance optimisation.
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++
-
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
Requirements
-
Excellent programming and scripting skills using C++ and Python
-
Understanding of processor architectures and profiling on Linux
-
Possess excellent written and oral communication skills, good work ethics, high sense of team-work
-
Love to produce quality work and be a team player
Desirable
-
Strong command of algorithmic performance - vectorisation, memory hierarchy, threading, lock-free patterns
-
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 for Linux system (manylinux, wheels)
Benefits & conditions
Pulled from the full job description
- Annual leave
- Employee assistance programme
- Company pension
- Private medical insurance, 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.