Python Software Engineer - ML Tooling / Research

Python Software Engineer - ML Tooling / Research

Posted 6 days ago by Principle

£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

Detailed Description From Employer:

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.