
Graphcore · Bristol
ABOUT GRAPHCORE Graphcore is one of the world’s leading innovators in Artificial Intelligence compute. It is developing hardware, software and systems infr...
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.
Reporting to a Team Lead in the frameworks team you will play a pivotal role in designing, implementing, optimising, maintaining
and supporting the software required to ensure the machine learning accelerators that Graphcore develop, enjoy first-class support
in state-of-the-art machine learning frameworks such as PyTorch and Triton.
This role sees you joining our PyTorch team, where you will be part of a SCRUM team working on delivering new features, optimise
performance, reviewing code changes, writing technical documentation, working with upstream communities, maintaining the code base
and supporting users.
In this role you will closely collaborate with other engineers, both within the PyTorch team as well as other engineering teams.
You help the team coordinate and deliver complex, open-ended technical tasks. You are pro-active and an excellent communicator.
You will develop deep expertise in the PyTorch project and will (in time) contribute to the team’s technical direction and
processes. You understand the importance of managing code quality and code complexity and balancing this against the need to
deliver business outcomes.
Note that the job title and associated benefits will be tailored to the successful candidate’s level of experience at the job
offer stage to one of Software Engineer, Staff Engineer, Senior Staff Engineer, Principal Software Engineer or Senior Principal
Software Engineer.
Note that as the machine learning software landscape is quite fast moving and as such flexibility is essential – over time you may
be asked to work on frameworks other than PyTorch.
The Frameworks team ensures Graphcore hardware works seamlessly with the tools that ML engineers and researchers love – Pytorch,
Triton, Jax and TensorFlow. We’re a talented and diverse team of engineers and we foster a culture of collaboration, openness and
learning. All our software teams follow agile working practices, and we care deeply about both ease-of-use as well as performance.
We work closely work with other Graphcore teams as well as leading open-source communities.
By joining us, you’ll join our exciting journey on the cutting edge of the machine learning industry. Your contributions will make
a real difference – enabling machine learning engineers and researchers to unlock the full potential of Graphcore’s hardware.
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
ABOUT GRAPHCORE 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 Reporting to a Team Lead in the frameworks team you will play a pivotal role in designing, implementing, optimising, maintaining and supporting the software required to ensure the machine learning accelerators that Graphcore develop enjoy first-class support in state-of-the-art machine learning frameworks such as PyTorch and Triton (note: “Triton” here refers to the Triton language/compiler and not the inference framework). This role sees you joining our Triton team, where you will be part of a SCRUM team working on delivering new features, optimise performance, reviewing code changes, writing technical documentation, working with upstream communities, maintaining the code base and supporting users. In this role you will closely collaborate with other engineers, both within the Triton team as well as other engineering teams. You help the team coordinate and deliver complex, open-ended technical tasks. You are pro-active and an excellent communicator. You will develop deep expertise in the Triton project and will (in time) contribute to the team’s technical direction and processes. You understand the importance of managing code quality and code complexity and balancing this against the need to deliver business outcomes. Note that the job title and associated benefits will be tailored to the successful candidate’s level of experience at the job offer stage to one of Software Engineer, Staff Engineer, Senior Staff Engineer, Principal Software Engineer or Senior Principal Software Engineer. Note that as the machine learning software landscape is quite fast moving and as such flexibility is essential – over time you may be asked to work on teams other than Triton. THE TEAM The Frameworks team ensures Graphcore hardware works seamlessly with the tools that ML engineers and researchers love – Pytorch, Triton, Jax and TensorFlow. We’re a talented and diverse team of engineers and we foster a culture of collaboration, openness and learning. All our software teams follow agile working practices, and we care deeply about both ease-of-use as well as performance. We work closely work with other Graphcore teams as well as leading open-source communities. By joining us, you’ll join our exciting journey on the cutting edge of the machine learning industry. Your contributions will make a real difference – enabling machine learning engineers and researchers to unlock the full potential of Graphcore’s hardware. RESPONSIBILITIES AND DUTIES * Designing and implementing new features & maintaining and supporting existing features. * Developing and maintaining unit tests, component tests and integration tests. * Optimising the software stack to make it more performant for our users. * Managing complex technical tasks with cross-team dependencies. * Managing code quality, code complexity and technical debt. * Provide technical leadership, contributing the team’s technical direction and processes. * Contributing to documentation, including user manuals and tutorials. * Conducting code reviews. * Resolving regressions, performance issues and software defects. * Coaching and mentoring other team members. * Contributing to a collaborative team culture. * Contribute to continuous improvements to improve ways of working. * Working with upstream open-source development teams. CANDIDATE PROFILE Essential: * Demonstrable strong software engineering skills. * Demonstrable experience of Python/C++ development. * Demonstrable experience of compiler development. Desirable: * Experience with MLIR (or more generally: SSA-based IRs) is highly desirable. * Demonstrable knowledge of AI/ML. * Understanding of computing architectures. * Experience of maintaining and supporting a complex code base. * Experience in profiling / optimising high performance code. * Experience of writing ML kernels. * Experience of using and/or development of ML Frameworks. * Experience in a computationally intensive engineering field. 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
About the job Build the software that helps machine learning developers get more from Graphcore hardware. As a Graduate Software Engineer in our Triton team, you will help connect Graphcore accelerators with the ML frameworks developers use every day. Your work will make our software easier to use, more reliable and more performant for real AI workloads. You will learn how compilers, frameworks and hardware interact in a production engineering setting. You will contribute to features, tests, documentation, code reviews and performance improvements across a complex codebase. You will be supported by experienced engineers while taking ownership of meaningful work early. This role suits a curious graduate who wants to grow deep technical skills and see their code make a practical difference. The Team & Culture The Frameworks team makes Graphcore hardware work smoothly with tools such as PyTorch, Triton, JAX and TensorFlow. The team sits close to compilers, runtime software and hardware, so you will learn from different technical perspectives. Work is organised through SCRUM, with clear priorities, regular feedback and shared accountability. You will own well-scoped tasks, ask questions early and build confidence through reviews, testing and documentation. Decisions are shaped by technical evidence, user impact and open discussion. Engineers are expected to speak up, challenge assumptions and improve how the team works. What we’re looking for * Bachelor’s or master’s degree in computer science, Maths, Machine Learning, Data Science, or a related field. * Hands-on experience with Python or C++, gained through study, projects, placements, internships or open source. * Practical experience or strong academic understanding of compiler development Interest in AI, machine learning frameworks, high performance software or computing architectures. * Ability to write clear, maintainable code, tests and documentation * Curiosity, ownership and willingness to learn through feedback, code reviews and technical discussion. Benefits * Flexible working:Balance your work and personal life with greater flexibility * Generous leave:Take time to rest, recharge and enjoy life outside of work * Retirement planning support: Up to 5% matched pension * Phantom equity:Share in Graphcore’s success * Workplace experience:Enjoy thoughtfully designed office spaces for collaboration, with free food and an on-site barista to support your day * Peace of mind protection:Income protection and life assurance to provide financial security for you and your loved ones * Flexible benefits:Tailor your benefits package with a choice of additional options, including private medical insurance and dental cover * Optional benefits: Dental cover, health cash plan, private medical insurance, cycle to work scheme, give as you earn Sponsorship Applicants must have the legal right to work in the UK. Unfortunately, we are unable to provide visa sponsorship or support visa applications for this role. Inclusion statement We welcome people from all backgrounds and experiences and are committed to building an inclusive environment where everyone can do their best work. We’re an equal opportunity employer and recognise that everyone brings different strengths and perspectives. If you need any adjustments during the interview process, just let us know - we’re happy to support you. Join the team at Graphcore 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 brings together deep expertise to solve complex problems and deliver meaningful progress in AI compute. Join Graphcore’s Graduate Triton Software Engineering Programme and start building the skills, confidence, and experience to turn your learning into real impact. Apply now.
SALARY RANGE: 260,400 - 352,200 SUBJECT TO ALIGNMENT TO THE RESPONSIBILITIES AND DUTIES OF THE ROLE ABOUT GRAPHCORE 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 Reporting to a Team Lead in the frameworks team you will play a pivotal role in designing, implementing, optimising, maintaining and supporting the software required to ensure the machine learning accelerators that Graphcore develop, enjoy first-class support in state-of-the-art machine learning frameworks such as PyTorch and Triton. This role sees you joining our PyTorch team, where you will be part of a SCRUM team working on delivering new features, optimise performance, reviewing code changes, writing technical documentation, working with upstream communities, maintaining the code base and supporting users. In this role you will closely collaborate with other engineers, both within the PyTorch team as well as other engineering teams. You help the team coordinate and deliver complex, open-ended technical tasks. You are pro-active and an excellent communicator. You will develop deep expertise in the PyTorch project and will (in time) contribute to the team’s technical direction and processes. You understand the importance of managing code quality and code complexity and balancing this against the need to deliver business outcomes. Note that the job title and associated benefits will be tailored to the successful candidate’s level of experience at the job offer stage to one of Software Engineer, Staff Engineer, Senior Staff Engineer, Principal Software Engineer or Senior Principal Software Engineer. Note that as the machine learning software landscape is quite fast moving and as such flexibility is essential – over time you may be asked to work on frameworks other than PyTorch. THE TEAM The Frameworks team ensures Graphcore hardware works seamlessly with the tools that ML engineers and researchers love – Pytorch, Triton, Jax and TensorFlow. We’re a talented and diverse team of engineers and we foster a culture of collaboration, openness and learning. All our software teams follow agile working practices, and we care deeply about both ease-of-use as well as performance. We work closely work with other Graphcore teams as well as leading open-source communities. By joining us, you’ll join our exciting journey on the cutting edge of the machine learning industry. Your contributions will make a real difference – enabling machine learning engineers and researchers to unlock the full potential of Graphcore’s hardware. RESPONSIBILITIES AND DUTIES * Designing and implementing new features & maintaining and supporting existing features. * Developing and maintaining unit tests, component tests and integration tests. * Optimising the software stack to make it more performant for our users. * Managing complex technical tasks with cross-team dependencies. * Managing code quality, code complexity and technical debt. * Provide technical leadership, contributing the team’s technical direction and processes. * Contributing to documentation, including user manuals and tutorials. * Conducting code reviews. * Resolving regressions, performance issues and software defects. * Coaching and mentoring other team members. * Contributing to a collaborative team culture. * Contribute to continuous improvements to improve ways of working. * Working with upstream open-source development teams. CANDIDATE PROFILE Essential: * Demonstrable strong software engineering skills. * Experience of Python development. * Experience of developing performant C++ applications in a commercial setting. * At least one of: * Experience of writing ML kernels. * Experience of compiler development. * Experience of using and/or development of ML Frameworks. * Experience in a computationally intensive engineering field. Desirable: * Demonstrable knowledge of AI/ML. * Understanding of computing architectures. * Experience of maintaining and supporting a complex code base. * Experience in profiling / optimising high performance code. 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.