Graphcore Logo

Graphcore

Software Engineer

Posted An Hour Ago
Be an Early Applicant
Hybrid
Bristol, England
Entry level
Hybrid
Bristol, England
Entry level
Responsible for developing new and maintaining existing kernels for linear algebra operations on AI hardware, while profiling and optimizing performance.
The summary above was generated by AI
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 a Software Engineer you will be responsible for development of new and support existing kernels for liner algebra operations on a new generation of AI hardware. 

The Team 

This is an exciting opportunity to join an expanding team at Graphcore. Kernel Engineering team is responsible for delivering high performance compute library to help customers gain the maximum performance from AI hardware. 

Responsibilities and Duties 
  • Implement kernels for linear algebra and tensor ops (GEMM, batched GEMM, convolutions, reductions, elementwise and fused operations) in C++. 
  • Profile and optimise across for next generation of AI hardware - threading, cache locality, memory layout, and kernel launch efficiency. 
  • Contribute towards performance and correctness - add microbenchmarks, regression tests, numeric validation.
  • 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.
Candidate Profile

Essential: 

  • Excellent programming and scripting skills using C++ and Python.
  • You thrive on solving challenging problems with creativity, think outside the box, and see the bigger picture beyond the specific software component you are working on. 
  • 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 understanding of processor architectures.
  • Experience or solid understanding of algorithmic performance - vectorisation, memory hierarchy, threading, lock-free patterns, and profiling on Linux. 
  • Hands-on with at least one BLAS/DNN stack and able to read/extend kernels.
  • Experience integrating native code into PyTorch or similar (custom ops, extensions, dispatch keys).
  • Comfort with CPU micro-optimisations and numerical stability/trade-offs across FP32/FP16/BF16.
  • ABI/API stability and packaging for Linux distros, manylinux, wheels.
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.

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

Top Skills

C++
Linux
Python

Graphcore London, England Office

Graphcore London Office Office

Lynton House, 7-12 Tavistock Square, London, United Kingdom, WC1H 9LT

Similar Jobs at Graphcore

16 Days Ago
Hybrid
Mid level
Mid level
Artificial Intelligence • Semiconductor
Design and implement features, optimize software performance, manage code quality, conduct code reviews, and mentor team members in developing machine learning frameworks like Triton.
Top Skills: C++Python
20 Days Ago
Hybrid
Senior level
Senior level
Artificial Intelligence • Semiconductor
As a System Software Engineer in Test, you will design and execute tests for firmware, collaborate with hardware teams, and mentor junior members.
Top Skills: CPython
21 Days Ago
Hybrid
Senior level
Senior level
Artificial Intelligence • Semiconductor
The role involves designing, implementing, testing, and documenting OS Kernel and Device Driver software, collaborating within an agile scrum team, and ensuring tight integration with hardware engineering to optimize performance.
Top Skills: CC++Python

What you need to know about the London Tech Scene

London isn't just a hub for established businesses; it's also a nursery for innovation. Boasting one of the most recognized fintech ecosystems in Europe, attracting billions in investments each year, London's success has made it a go-to destination for startups looking to make their mark. Top U.K. companies like Hoptin, Moneybox and Marshmallow have already made the city their base — yet fintech is just the beginning. From healthtech to renewable energy to cybersecurity and beyond, the city's startups are breaking new ground across a range of industries.

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account