Machine Learning Engineer (m/f/d)
The task
The models we put into operation run on plant data from real operation: presses, dryers, wind farms, fleets. That means time series with gaps, sensors that drift, and operating states nobody labelled in the data set. On top of that you build condition monitoring and predictive maintenance — from the first hypothesis to the point where somebody in the control room acts on it.
The hard part comes after the first good result. A model that convinces on historical data has to be watched in operation: we want to be able to say at any time whether it still holds, and how you can tell. What you build, you help operate — there is no team here that takes your models off you once they run.
You work closely with the data engineering colleagues on the same data model. The question of what a signal means is answered together here, not passed along in a ticket.
Key facts
- Location
- Konstanz, hybrid
- Contract
- Permanent employment
- Hours
- Full time
- Start
- from September 2026
- Closing date
- Questions first
- info@control-f.io
Your work and what it takes
What you do
- Condition monitoring and anomaly detection on time series from plant operation — knowing that a missing reading, a frozen sensor and a real outlier are three different things.
- Models for predictive maintenance, together with the people who know the machine. Their experience is the label the data set is missing.
- The question of robustness before the question of accuracy: what false-alarm rate can an operation live with, and what does a missed case cost?
- Taking models into operation and watching them there — drift, data quality, retraining, and a measure that shows decay before the customer sees it.
- Writing results up so they can be followed. A model whose claim nobody can check does not get used in operation.
What is required
- Several years of applied machine learning on real data, not only on competition data sets.
- Python at a level where you tidy up other people's code; confident with the usual libraries for time series and modelling.
- A solid grasp of validation: why a random split gives the wrong answer on time series, and what to do instead.
- A willingness to operate models as well — deployment, monitoring, being on hand when something tips over.
- German for talking to operations, English for the documentation.
What helps and is not a condition
- Experience with industrial sensors, plant physics or maintenance. Anyone without it picks it up on the first project.
- Causal inference, uncertainty estimation, Bayesian methods — useful wherever a point prediction is not enough.
- Experience with MLOps tooling, or the curiosity to improve ours.
- A doctorate. We have both in the team and the work does not differ by it.
Apply
A CV and three sentences on why this position in particular. No cover letter, no photo, no date of birth. We answer receipt within a week, and from receipt to decision it is usually three weeks — the procedure, with all four steps, is set out on the careers page, together with what happens to your documents afterwards.
Quote CF-2026-ML-01 in the subject line so your application lands in the right process. It is in the advertisement itself and is the only number we keep for it.
More open positions
-
DevOps Engineer (m/w/d)
Advance the energy transition with AI and data, make machines more efficient, and help us make better use of renewable energy? Then you have the right mindset for Control-F, our fully remote data boutique that works with global market leaders and mid-sized companies.
- Location
- Remote
- Contract
- Permanent employment
- Hours
- Full time
- Start
- immediately
-
Data Engineer (m/f/d)
You build the routes along which plant data arrives: connection, modelling, quality assurance. Without that foundation, every analysis on top of it is guesswork.
- Location
- Konstanz, hybrid
- Contract
- Permanent employment
- Hours
- Full or part time
- Start
- immediately
-
Working Student Frontend (m/f/d)
You help build the surface on which operators read their plants. HTML, CSS and as much JavaScript as necessary — in our experience that is not much.
- Location
- Konstanz
- Contract
- Working student
- Hours
- 16–20 hrs/week
- Start
- immediately
All 4 positions with their full terms are on the careers page.