How we went from a 4-hour report to 8 minutes
The report existed, worked, and ate half a day from an expensive person. That is the highest-yield kind of problem: recurring cost, bounded scope, criteria already defined by the business.
Why it was a good candidate
- The expected output was already defined and validated by quality.
- There were three sources, not thirty.
- The cost was daily and measurable in hours of an identifiable person.
When those three hold together, the payback is measured in weeks, not quarters.
The fix
The fix was not glamorous: normalize the three sources, make the batch a first-class entity, and generate the document automatically using the same criteria the person applied.
The slow part was not the code. It was sitting down to document the criteria she applied from memory and that were written nowhere: what to do when an analysis is missing, how to round, which deviation deserves a footnote.
Where the person stays
The key was keeping her in the loop: the system drafts, the person reviews and signs. Automating 90% and leaving judgement where it matters beats chasing 100%.
That remaining 10% is where regulatory responsibility lives. Automating it would have multiplied risk to save eight minutes.
“Automate the transcription, not the judgement.”
Blog
Your problem is not AI — nobody trusts the data
Before talking predictive models, there are three questions almost no plant can answer about its own data.
MQTT Sparkplug B: why I stopped writing point-to-point integrations
Six plants, four protocols and a separate integration per pair. The predictable ending, and how I reversed it.