Every Monday at midnight, our forecasting pipelines kick off. By the time we get to the office, it's either a good week or a bloodbath.
We prefer good weeks. This talk is about how we engineered for more of them — scrappily, in Python, as a tiny data team without a dedicated SRE or a long line of specialized vendor tools.
It all started with an incident: some scheduled jobs stopped running, and nothing we'd built at the time was designed to notice. We were monitoring loud failures; silence was sorely missing from the list.
Observability (is the system behaving?) and explainability (why is it producing these numbers?) usually get treated as separate disciplines with separate stacks, but a small team often doesn't have the capacity to compartmentalize. So we treat it as one problem: is this forecast trustworthy enough to act on, and if not, how fast can we find out why?
I'll show what building instrumentation around this question looks like in practice, and what changed when we added agentic components to the mix. A system that can act on its own is also a system that can be confidently wrong on its own — and suddenly there's much more to watch, and exactly as many of us watching.
The system will keep finding new and exciting ways to ruin our Mondays — it just doesn't get to pull the same shenanigans twice.
Judit Kisistók is an ML Engineer at Hakio, where she develops demand forecasting systems — and the AI agents on top of them — for global fashion brands. Previously, she worked on ML for cancer drug discovery at Turbine.AI and completed a PhD in computational oncology at Aarhus University, with two co-invented patents and a co-first-authored Nature paper along the way. She's especially drawn to building "explainable(ish)" systems and hasn't met a black box she didn't want to poke.