Yesterday I learned why feature stores exist.
Models don’t learn from raw data.
They learn from features.
And if training and production use different features, model quality can quietly degrade.
That raised one final question.
What happens after a model is deployed?
Today I learned that deployment is actually the beginning of the lifecycle.
A Model Is Only Valuable In Production Link to heading
A model sitting in a notebook creates no value.
A model stored on disk creates no value.
A model becomes useful only when users can interact with it.
That means turning this:
model.pkl
into something like this:
POST /predict
A trained artifact becomes a service.
Serving A Model Link to heading
At a high level, model serving looks similar to any other application.
User
↓
API
↓
Prediction
But there is an important difference.
Traditional applications execute business logic.
Machine learning services execute learned behavior.
The application is no longer making decisions through code alone.
The model is participating in those decisions.
The Journey Of A Prediction Link to heading
A single prediction often looks like this.
User Request
↓
Fetch Features
↓
Model Inference
↓
Prediction
↓
Response
The model is now part of a larger production system.
Everything around it matters:
- Latency
- Availability
- Scalability
- Reliability
This starts to look very familiar from a platform engineering perspective.
Why Kubernetes Shows Up Again Link to heading
Throughout this sprint, Kubernetes has been quietly sitting underneath many MLOps systems.
Pipelines run on Kubernetes.
Training jobs run on Kubernetes.
Serving systems often run on Kubernetes too.
A simplified serving architecture might look like this.
Inference Service
↓
Kubernetes
↓
Pods
↓
Model Server
The model becomes another workload the platform needs to manage.
KServe Link to heading
One tool I explored was KServe.
The idea is surprisingly simple.
Instead of managing deployments directly, we describe an inference service.
Model
↓
Inference Service
↓
Endpoint
The platform handles much of the operational complexity.
Things like:
- Scaling
- Rollouts
- Traffic routing
become easier to manage.
The model starts behaving like a first-class cloud-native workload.
The Problem Nobody Notices Link to heading
At this point, everything seems complete.
The model is deployed.
Users are getting predictions.
Metrics look healthy.
But there is a hidden problem.
The world changes.
Data Changes Constantly Link to heading
Imagine training a fraud detection model.
Training Data
↓
Fraud Patterns
↓
Model
A few months later:
User Behavior Changes
Fraud Patterns Change
Business Rules Change
The model has not changed.
Reality has.
This is where machine learning differs from traditional software.
The code may still be correct.
The model may no longer be.
Understanding Drift Link to heading
Today I learned about drift.
A simplified example looks like this.
Training Data
↓
Distribution A
Months later:
Production Data
↓
Distribution B
The model is making predictions on data it was never really trained to understand.
This is called data drift.
Sometimes the relationship between inputs and outputs changes too.
That is often called concept drift.
Either way, model quality starts declining.
Why Monitoring Matters Link to heading
Earlier in my career, monitoring usually meant questions like:
CPU Usage?
Memory Usage?
Request Latency?
Those metrics are still important.
But ML systems introduce new questions.
Prediction Distribution?
Feature Distribution?
Model Accuracy?
Data Drift?
The infrastructure may be healthy.
The model may still be failing.
That was a new perspective for me.
Closing The Loop Link to heading
The most important thing I learned today is that production ML systems are not linear.
They are cyclical.
A simplified lifecycle looks like this.

The output of production becomes the input to future training.
The system continuously evolves.
This is the operational reality that MLOps exists to manage.
Looking Back At The Journey Link to heading
Seven days ago, I started with a simple question.
Why isn’t DevOps enough for machine learning?
Now the answer feels much clearer.
Machine learning introduces entirely new operational concerns.
We explored:
Day 1 → Why MLOps Exists
Day 2 → Reproducible Training
Day 3 → Data Versioning & Experiment Tracking
Day 4 → Hyperparameter Tuning & AutoML
Day 5 → Pipelines & Orchestration
Day 6 → Feature Stores
Day 7 → Serving, Monitoring & Retraining
What surprised me most is that almost every topic came back to the same idea.
Reproducibility.
Whether we’re talking about:
- Data
- Experiments
- Pipelines
- Features
- Models
we are constantly trying to answer:
Can we understand, reproduce, and trust this system?
Today’s Takeaway Link to heading
Deployment is not the end of the machine learning lifecycle.
It’s the point where the lifecycle begins again.
What’s Next? Link to heading
This concludes my 7 Days of MLOps sprint.
The next step for me is going deeper into how modern AI platforms are built.
Questions I’m now interested in exploring include:
- Model registries
- Distributed training
- LLM serving
- Vector databases
- AI platform architecture
- Multi-tenant ML infrastructure
Thanks for following along 🚀