£115,000 Per year
Inside
Onsite
London, England, United Kingdom
Summary: The Python Software Engineer role focuses on developing and enhancing internal tooling for machine learning research, ensuring that systems operate effectively at scale. The position requires hands-on engineering to build scalable Python tools, improve performance, and collaborate closely with researchers. This is a fully on-site role in a hardware-heavy environment, offering a competitive salary and a 12-month contract. The role emphasizes ownership, impact, and technical depth in a dynamic research setting.
Key Responsibilities:
- Build and maintain scalable Python tooling that supports ML research workflows
- Improve reliability: fix bugs, optimise performance, and ship iterative enhancements in sprints
- Integrate with distributed compute, data storage, and internal development systems
- Work closely with researchers as your "users" - gather requirements, translate ambiguity into working software
- Write clean, maintainable code and debug problems that span systems
Key Skills:
- 4+ years of commercial experience building software in Python
- Hands-on with PyTorch or TensorFlow in production or applied ML environments
- Experience with distributed or high-performance computing
- Comfortable working with large/complex ML datasets and research-style workflows
- Good communicator: you can explain what you're building and why, not just ship code
Salary (Rate): £115,000.00 yearly
City: London
Country: United Kingdom
Working Arrangements: on-site
IR35 Status: inside IR35
Seniority Level: Mid-Level
Industry: IT
If you like building Python systems that make machine learning research actually work at scale - this one's for you. You'll develop and improve the internal tooling that researchers rely on daily: distributed compute workflows, data pipelines, and robust infrastructure that connects research code to real environments - including hardware/prototype devices on-site.
What's in it for you £98,000 - £110,000 annual salary 12-month contract - inside IR35 - PAYE Fully on-site in Cambridgeshire - hardware-heavy environment Proper engineering role: ownership, impact, and technical depth
What you'll do
- Build and maintain scalable Python tooling that supports ML research workflows
- Improve reliability: fix bugs, optimise performance, and ship iterative enhancements in sprints
- Integrate with distributed compute, data storage, and internal development systems
- Work closely with researchers as your "users" - gather requirements, translate ambiguity into working software
- Write clean, maintainable code and debug problems that span systems
Must-haves
- 4+ years of commercial experience building software in Python
- Hands-on with PyTorch or TensorFlow in production or applied ML environments
- Experience with distributed or high-performance computing
- Comfortable working with large/complex ML datasets and research-style workflows
- Good communicator: you can explain what you're building and why, not just ship code
Nice to have
- Audio / DSP-adjacent ML exposure
- ML tooling/pipelines built for researchers or data scientists
- Linux/Windows scripting
- CI/CD and deployment experience in complex environments
How does your day looks
You'll spend time building new features into internal tools, responding to researcher requests, fixing what's broken, improving what's slow, and collaborating with the infra team in a sprint cadence. This is hands-on engineering with real ownership.
How to apply? If you're a Python engineer/developer who enjoys solving real systems problems for ML teams, share your CV, and we'll talk through fit, on-site expectations, and the interview process.