Senior Software Engineer - AI Compute Libraries
Salary not listed • Bristol, UK • Full-time
Posted 2d ago
About the job
As a Senior Software Engineer on the AI Compute Libraries team, you will develop, maintain, and release C++ libraries and runtime APIs that enable engineers to build and execute workloads on Graphcore's AI hardware. Your work will involve designing clear abstractions for low-level hardware capabilities, improving reliability and performance, and supporting developers integrating these libraries into the wider software stack. You will own library changes from design through release and maintenance, ensuring dependable releases with proper packaging, documentation, and fixes. This role requires collaborating with library users to understand requirements, resolve integration issues, and guide API improvements.
Responsibilities
- Develop, maintain, and release C++ libraries and runtime APIs for AI hardware workloads.
- Design clear abstractions for low-level hardware capabilities.
- Improve the reliability and performance of compute libraries.
- Support developers integrating libraries into the software stack.
- Own library changes from design, implementation, review, integration, release, to maintenance.
- Deliver dependable library releases through packaging, dependency validation, and release notes.
- Write API documentation, usage examples, and migration guidance.
- Collaborate with library users to understand requirements and resolve integration issues.
Requirements
- Strong modern C++ skills and commitment to producing reliable, maintainable code.
- Ability to translate complex, low-level concepts into clear APIs and abstractions.
- Strong debugging and automated testing skills, including diagnosing issues in existing codebases.
- Confidence in owning substantial engineering tasks independently and working effectively across teams.
- Clear written and spoken communication, with a willingness to share knowledge and support colleagues.
- Experience with hardware accelerators, heterogeneous computing, or architecture-specific software.
- Familiarity with CMake, C++ library packaging, API/ABI compatibility, versioning, or dependency management.
- Experience integrating C++ libraries with Python or ML frameworks like PyTorch.
- Experience improving release automation, compatibility testing, or developer tooling.
Benefits
- Flexible working
- Generous leave
- Up to 5% matched pension
- Phantom equity
- Thoughtfully designed office spaces with free food and on-site barista
- Income protection and life assurance
- Electric Vehicle Scheme (salary sacrifice)
- Flexible benefits including private medical insurance, cycle to work scheme, and dental cover
