Senior Software Engineer - AI Compute Libraries & Performance
Build high-performance AI compute libraries for next-generation AI hardware, implementing kernels for linear algebra and tensor operations while owning performance and numerical correctness.
Responsibilities
- Build high-performance AI compute libraries
- Design and implement linear algebra and tensor kernels
- Implement GEMM, convolution and reduction operations
- Own performance and correctness through microbenchmarks
- Maintain regression tests
- Perform numerics validation
- Profile and optimize threading, cache locality, memory layout and kernel launch efficiency
- Debug and resolve bugs
- Mentor others
- Support Agile ways of working
Requirements
- Excellent C++ programming skills
- Excellent Python scripting skills
- Understanding of processor architectures
- Linux profiling
- Algorithmic performance
- Vectorisation
- Memory hierarchy
- Threading
- Hands-on experience with BLAS or DNN stacks
- Ability to read or extend kernels
- Understanding of numerical stability
- Understanding of FP32, FP16, BF16 and FP8 trade-offs
- Written and verbal communication skills
Benefits
- Flexible working
- Comprehensive healthcare and dental cover
- Phantom equity
- Fully funded gym card
- Fitness classes
- Death and disability insurance
- Retirement savings with a 4% employer contribution
- Employee Assistance Programme