Graphcore has created a completely new processor, the Intelligence Processing Unit (IPU), specifically designed for artificial intelligence. The IPU’s unique architecture means developers can run current machine learning models’ orders of magnitude faster. More importantly, it lets AI researchers undertake entirely new types of work, not possible using current technologies, to drive the next great breakthroughs in general machine intelligence. 

We believe our IPU technology will become the worldwide standard for artificial intelligence compute. The performance of Graphcore’s IPU is going to be transformative across all industries and sectors whether you are a medical researcher, roboticist or building autonomous cars. 

Our team is at the forefront of the artificial intelligence revolution, enabling innovators from all industries and sectors to expand human potential with technology. What we do really makes a difference.

You will be working as part of Graphcore’s engineering team in Oslo developing Graphcore scale out technology for our IPU. In your role, you will also be working closely with our engineering teams in Oslo and Bristol on how to bring the benefits of our AI scale out solution to our customers. 


The AI Frameworks team’s responsibility is to design, develop, extend and integrate next-generation distribution technologies into existing AI frameworks such as TensorFlow and PyTorch using our Poplar compiler and our advanced runtime environment, PopART.

Key Skills

  • Applied experience with machine learning/deep learning
  • Strong and proven programming skills in C++ and/or Python
  • Experience using TensorFlow and/or PyTorch
  • Understanding of large scale distributed deep network concepts such as sharding and batch splitting
  • Ability to work on large system software design and development
  • Experience with implementing tools, libraries and frameworks
  • Excellent written and verbal communication skills because you will be helping other teams how to get the best performance at scale

Good to have

  • Master’s or PhD degree in computer science /software engineering, physics, mathematics or other technical related fields
  • Experience working on multi-person software projects across multiple disciplines
  • Familiarity with large, high-performance compute clusters
  • Expertise in writing performant multi-threaded/parallel/distributed code

We welcome people of different backgrounds and experiences and are committed to building an inclusive work environment that makes Graphcore a great home for everyone. We are an equal opportunity employer and want to build a work environment where everyone is happy, productive and respectful, so they can do their best. If you have a disability or additional need that requires accommodation, just let us know. 

Apply for this Job

* Required