INTERNSHIP DETAILS

2026 Software Engineering Intern - ML Kernels & Runtime Team

CompanyGraphcore
LocationBristol
Work ModeOn Site
PostedFebruary 27, 2026
Internship Information
Core Responsibilities
Responsibilities include supporting the design and implementation of high-performance kernels for linear algebra and tensor operations like GEMM and convolutions using C++. The role also requires profiling and optimizing these kernels for next-generation AI hardware, focusing on threading, cache locality, and memory layout.
Internship Type
full time
Company Size
556
Visa Sponsorship
No
Language
English
Working Hours
40 hours
Apply Now →

You'll be redirected to
the company's application page

About The Company
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.
About the Role

About Us

Graphcore is one of the world’s leading innovators in Artificial Intelligence compute. 

It is developing hardware, software and systems infrastructure that will unlock the next generation of AI breakthroughs and power the widespread adoption of AI solutions across every industry. 

As part of the SoftBank Group, Graphcore is a member of an elite family of companies responsible for some of the world’s most transformative technologies. Together, they share a bold vision: to enable Artificial Super Intelligence and ensure its benefits are accessible to everyone. 

Graphcore’s teams are drawn from diverse backgrounds and bring a broad range of skills and perspectives. A melting pot of AI research specialists, silicon designers, software engineers and systems architects, Graphcore enjoys a culture of continuous learning and constant innovation. 

Job Summary

We are looking for a Software Engineering Intern to join a team pioneering the development of high-performance machine learning (ML) kernels for a new generation of AI hardware. 

In this role, you will contribute to building optimised compute kernels that support a wide range of ML operators—powering applications from convolutional neural networks (CNNs) to large language models (LLMs). 

You'll leverage low-level programming and hardware-aware optimisation techniques to extract maximum performance and efficiency from modern accelerators. This is a unique opportunity to work at the intersection of ML, numerical computing, and scalable systems.

The Team

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

Responsibilities and Duties

  • Supporting the design and implementation of kernels for linear algebra and tensor ops (GEMM, batched GEMM, convolutions, reductions, elementwise and fused operations) in C++
  • Profile and optimise for the next generation of AI hardware - threading, cache locality, memory layout, and kernel launch efficiency.
  • Support performance and correctness - add microbenchmarks, regression tests, numerics validation
  • Debug issues, resolve bugs and generally improve the quality and functionality of the product

About you

You are open-minded and collaborative with interests in performance optimisation and memory-efficient designs, and you are looking to join a team of experts.

You are comfortable to discuss technical tradeoffs, receive feedback and iterate on solutions and you are drawn to technically challenging problems and use analyticals reasoning to navigate unfamiliar domains.

Essential:

  • Bachelor or Master's Degree in Computer Science, Maths, Machine Learning, Data Science, or related field
  • Experirence in C/C++11.
  • Familiarity with Python or scripting tools for automation and testing.
  • Understanding of linear algebra, numerical methods, or scientific computing.
  • Good problem-solving skills and ability to work collaboratively in a fast-paced environment.

Preferred Qualifications:

  • Courseworks or past experience in using ML frameworks, parallel programming, or code optimisation.
  • Exposure to math libraries such as MKL or OpenBLAS.
  • Knowledge of performance analysis tools.

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.

Key Skills
C++PythonLinear AlgebraTensor OpsGEMMConvolutionsLow-level ProgrammingHardware OptimisationNumerical MethodsScientific ComputingPerformance ProfilingDebuggingRegression Testing
Categories
TechnologyEngineeringSoftwareScience & ResearchData & Analytics
Benefits
Flexible workingGenerous annual leave policyPrivate medical insuranceHealth cash planDental planPension (matched up to 5%)Life assuranceIncome protectionGenerous parental leave policyEmployee assistance programme