Harnham is looking for a Senior Research Engineer (ML & Data) to join a high-performing team focused on building scalable machine learning solutions in a production environment. This role involves working across the full software development lifecycle to translate advanced models into real-world impact.
Responsibilities:
- Build, test, and deploy high-quality software using modern development practices across the full SDLC
- Create and maintain large-scale data pipelines to support the training and deployment of machine learning models (e.g., entity recognition and matching) across high-volume data sets
- Work closely with researchers, data scientists, and engineering teams in a collaborative, globally distributed environment
- Contribute in a fast-paced, iterative environment with a strong focus on timely delivery and continuous improvement
- Explore new technologies and approaches, contributing to the evolution of platform capabilities and engineering practices
- Clearly articulate technical concepts and solutions to both technical and non-technical stakeholders
Requirements:
- Bachelor's degree in Computer Science or a related field (or equivalent experience)
- 5+ years of software engineering experience
- 2+ years delivering production-grade machine learning solutions
- Strong proficiency in Python and its ecosystem
- Experience building clean, maintainable, and well-tested code
- Proven ability to quickly adopt new technologies to solve complex challenges
- Experience working closely with data science teams to productionize research
- Hands-on experience with cloud environments (preferably AWS)
- Familiarity with Agile methodologies, CI/CD, DevOps, and SDLC best practices
- Strong interest in practical applications of machine learning
- Experience integrating ML models into production systems (e.g., scikit-learn, XGBoost)
- Exposure to big data platforms (e.g., Snowflake) and scalable SQL
- Understanding of MLOps / ModelOps principles
- Experience with entity matching or entity resolution at scale
- Ability to bridge research and engineering workflows effectively
- Experience with additional programming languages (e.g., Java, Scala, Rust, TypeScript)