At a Glance
- Tasks: Design and implement software for cutting-edge AI technologies in a collaborative team.
- Company: Join Graphcore, a leader in AI innovation and part of the SoftBank Group.
- Benefits: Enjoy flexible working, generous leave, private medical insurance, and a vibrant office culture.
- Why this job: Make a real impact in the AI field while developing your skills with top-notch engineers.
- Qualifications: Strong software engineering skills in Python/C++, experience with compiler development, and knowledge of AI/ML.
- Other info: Be part of a diverse team that values collaboration, learning, and continuous improvement.
The predicted salary is between 36000 - 60000 £ per year.
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 Triton team, where you will be part of a SCRUM team working on delivering new features, optimising 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 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.
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 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 to 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
- Demonstrable strong software engineering skills.
- Demonstrable experience of Python/C++ development.
- Demonstrable experience of compiler development.
- 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.
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.
Software Engineer - Triton New Bristol, UK; Cambridge, UK employer: graphcore
Contact Detail:
graphcore Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Software Engineer - Triton New Bristol, UK; Cambridge, UK
✨Tip Number 1
Network like a pro! Reach out to current employees at Graphcore on LinkedIn or other platforms. Ask them about their experiences and any tips they might have for the interview process. This can give you insider knowledge and make your application stand out.
✨Tip Number 2
Prepare for technical interviews by brushing up on your coding skills. Use platforms like LeetCode or HackerRank to practice common algorithms and data structures. Being sharp on these will help you ace those coding challenges!
✨Tip Number 3
Show your passion for AI and machine learning! During interviews, share your personal projects or contributions to open-source communities. This demonstrates your commitment and enthusiasm for the field, which is something Graphcore values.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining the Graphcore team.
We think you need these skills to ace Software Engineer - Triton New Bristol, UK; Cambridge, UK
Some tips for your application 🫡
Tailor Your Application: Make sure to customise your CV and cover letter to highlight your experience with Python/C++ and any relevant work in AI/ML. We want to see how your skills align with the role, so don’t hold back!
Show Off Your Projects: If you've worked on any cool projects, especially those involving machine learning frameworks or compiler development, make sure to mention them. We love seeing practical examples of your work!
Be Clear and Concise: When writing your application, keep it straightforward. Use clear language and avoid jargon unless it's relevant. We appreciate a well-structured application that gets straight to the point.
Apply Through Our Website: Don’t forget to submit your application through our website! It’s the best way for us to receive your details and ensures you’re considered for the role. We can’t wait to hear from you!
How to prepare for a job interview at graphcore
✨Know Your Tech Inside Out
Make sure you brush up on your Python and C++ skills, as well as your understanding of compiler development. Familiarise yourself with ML frameworks like PyTorch and Triton, and be ready to discuss how you've used them in past projects.
✨Showcase Your Problem-Solving Skills
Prepare to talk about specific challenges you've faced in software engineering, especially those related to optimising performance or managing complex code bases. Use the STAR method (Situation, Task, Action, Result) to structure your answers.
✨Emphasise Collaboration
Graphcore values teamwork, so be ready to share examples of how you've worked effectively in a team setting. Highlight any experience you have with SCRUM or agile methodologies, and discuss how you’ve contributed to a collaborative culture.
✨Ask Insightful Questions
Prepare thoughtful questions about the Triton team and Graphcore's approach to AI innovation. This shows your genuine interest in the role and helps you assess if the company culture aligns with your values.