Machine Learning Engineer
Role Summary
We are building a US data science team of three: a lead who owns risk analytics for our customers' track, a data scientist working on the quality of analyst decisions, and you. You are the engineer. What the other two build in notebooks, you turn into systems that run on a schedule, hold up under real data, and can be handed to someone else. That covers the full model lifecycle. Packaging and deployment, the pipelines that feed models, versioning of data and models together, monitoring for drift and degradation, retraining, and the plumbing that gets a result in front of the person who needs it. We are early enough that you get to choose most of this rather than inherit it. You will not be doing this on bare ground. A cloud engineering team across the US and UK looks after our AWS platform, networking, and security, and the UK engineering team runs the data platform and the inspection products. Your work sits on top of theirs, and getting that boundary right is part of the job. We hold years of ultrasonic, induction, and eddy current test data from non-stop inspection across North America. Volume is not the constraint here. Getting reliable, reproducible answers out of it is.
What We Expect From You
We expect an exceptional level of drive and ambition. You think beyond today's work to what the team and organization need next, champion bold ideas, and see them through. Your hunger is infectious - it inspires those around you to aim higher. You should be someone who puts the team first. You share credit openly, admit when you are wrong, and welcome feedback as an opportunity to grow. You are comfortable saying "I don't know" and asking for help when needed. This role requires a high degree of self-direction. You will manage complex work with minimal oversight, identify problems and solutions proactively, and may lead workstreams. You make well-reasoned technical decisions and **escalate** when there is genuine business or architectural impact. You should be able to quickly grasp complex problems that span multiple systems or domains. We expect you to design effective solutions for non-trivial requirements, identify root causes efficiently, and consider performance, scalability, and maintainability in your approach. You will be the person who insists that a result is reproducible. That is a temperament as much as a skill, and it is the main reason this seat exists as an engineering role rather than a third analyst.
Key ResponsibilitiesTake models and analyses from prototype to production, and own them once they are there
Build and maintain the data pipelines that feed models, working with large-scale rail inspection data including ultrasonic, electromagnetic, and operational sources
Implement model and data versioning so that any result can be traced back to the code and data that produced it
Monitor deployed models for drift, degradation, and data quality problems, and build the retraining paths that respond to them
Build and maintain APIs and services that deliver model output to the people and systems that consume it
Design and implement the compute and orchestration for training and inference workloads on AWS (S3, Lambda, Glue, Step Functions, SageMaker, or equivalents)
Set the team's engineering standards: testing, code review, environments, CI/CD, and release practice
Work with the cloud engineering team on the platform underneath, and with the UK data and platform teams on shared data sources
Automate the manual steps between an idea and a running model, so the data scientists spend their time on method
Write clean, tested, well-documented code following engineering best practices
Participate in code reviews, sprint planning, and technical design discussions
Document architecture decisions, runbooks, and operational proceduresRequired Skills & QualificationsStrong proficiency in Python, including the scientific stack (NumPy, Pandas, Scikit-learn, or similar)
Experience putting machine learning models or statistical analyses into production and keeping them running
Experience building data pipelines and working with structured and unstructured data at scale
Solid understanding of SQL and relational and non-relational databases
Experience with AWS cloud services and cloud-native architecture
Practical experience with containerization (Docker) and infrastructure-as-code
Understanding of software engineering principles: testing, code quality, design patterns
Familiarity with version control (Git), CI/CD pipelines, and agile development practices
Strong problem-solving skills and ability to learn new technologies quickly
Good communication skills - able to explain technical concepts to non-technical stakeholders
A collaborative, team-first mindset aligned with our values of being Humble, Hungry, and Smart Qualifications and years of experience are indicative guidelines, not mandatory requirements. These criteria may be met through demonstrated competency or equivalent experience.Desirable SkillsBachelor's degree in computer science, engineering, or a related technical field
MLOps tooling: MLflow, SageMaker Pipelines, Kubeflow, DVC, Weights & Biases, or similar
Workflow orchestration (Airflow, Dagster, Prefect, Step Functions)
Observability and monitoring tooling (CloudWatch, Grafana, Datadog, or similar)
Experience being the first engineer on a data science team
Signal processing or work with sensor data
Experience in rail testing, NDT, or sensor-based inspection industries (ultrasound, eddy current, electromagnetic, etc.)#J-18808-Ljbffr