All posts
// / Blog

I inherited an ML project with no documentation.

Zero. The original engineer left. Nobody else knew how it worked.

It took me 3 weeks just to understand what the system did. Another 2 weeks to figure out how to retrain the model. Another week to discover there was a critical data preprocessing step hidden in a cron job that nobody knew about.

Six weeks of archaeology. Because someone didn't write documentation.

I'm now almost aggressive about documentation. Every project gets:

A README that explains what the system does, how to set it up, and how to run it. Not "obvious" information — actually useful setup instructions.

An architecture document with a diagram showing how data flows through the system.

A runbook for common operations: how to retrain, how to deploy, how to rollback, how to debug common issues.

Inline code comments for anything non-obvious. Not "increment counter" comments — comments explaining WHY something is done a certain way.

A model card for every deployed model.

Total time investment: maybe 2-3 hours per project. Time saved for the next person (which might be future you): weeks.

Documentation isn't a favor to others. It's a gift to your future self. Write it while the context is fresh, not six months later when you've forgotten everything.

#Documentation#MachineLearning#BestPractices#SoftwareEngineering#MLOps