We talk about unified platforms like they’re purely a technical challenge. Kubernetes can handle both app workloads and ML workloads. Service meshes work for both. The infrastructure unification is a solved problem.
But here’s what keeps me up at night as CTO: governance.
The promise of unified platforms sounds perfect for governance: single platform means single governance model, security by default, compliance baked in. One set of policies instead of three. One audit trail instead of fragmented logs. One security review instead of parallel processes.
That’s the pitch to the board. That’s how we justify the investment. “Think of the governance efficiencies!”
But the reality? ML models need fundamentally different controls than app deployments. And trying to force both through the same governance process creates a painful choice: become a bottleneck or accept risk.
The Governance Gap
Here’s what standard app deployment governance looks like in our organization:
- Code review (2 approvals)
- Security scan (automated)
- Integration tests pass
- Staging deployment validation
- Production deployment approval (automated for low-risk, manual for high-risk)
Takes 2-3 hours for a standard deployment. Works great for app teams.
Now here’s what ML model deployment governance should include:
- Model performance validation against baseline
- Training data lineage verification
- Feature drift detection configuration
- Bias and fairness testing
- Explainability requirements (especially for regulated use cases)
- Inference cost estimation and approval
- Model versioning and rollback strategy
- A/B testing framework setup
- Monitoring for concept drift and data drift
Each of these is a potential gate. Each requires different expertise to review. Some are automated, some aren’t. The tooling barely exists for half of these.
If we apply our app deployment governance to ML models, we’re checking the wrong things. We’re asking “did the container build” when we should be asking “will this model make biased decisions about loan applications?”
The Real-World Collision
Last month, we hit this head-on. A data scientist wanted to deploy a recommendation model that used customer purchase history. Standard ML workflow, nothing unusual.
Our platform’s governance policy blocked it. Why? Because it flagged PII in the training data. Our app deployment policy says: no PII in containers, no exceptions.
That policy makes perfect sense for app deployments. You shouldn’t bake customer data into application code. But for ML models? The entire point is learning from historical data that includes customer attributes.
The data scientist tried to explain this to the security review. Security said “policy is policy.” The data scientist tried to route around the platform. Security found out and escalated. I got pulled into a meeting where both sides were technically correct and organizationally stuck.
We ended up creating a manual exception process. It took three weeks. The model finally deployed. But we’re right back where we started: fragmented governance, manual handoffs, the exact problem the unified platform was supposed to solve.
The Dilemma
Here’s the core tension:
Option 1: Unified governance that applies the same controls to all deployments. Fast, consistent, auditable. But it either blocks ML workflows with app-centric policies or exposes the organization to risk by relaxing policies to accommodate ML edge cases.
Option 2: Differentiated governance with separate approval tracks for different workload types. Handles the nuance of ML-specific concerns. But now you’ve got complexity, potential inconsistency, and the question of who decides which track a deployment goes through.
Most organizations I talk to are stuck between these options. They want unified platforms but can’t figure out how to govern them without either creating bottlenecks or accepting governance gaps.
What Good Might Look Like
I think the answer is differentiated governance tracks within a unified platform. Same infrastructure, different guardrails. Like airport security: everyone goes through screening, but TSA PreCheck is a different process than standard security. Same goal (safe flights), different implementations based on risk profile.
For platforms, this means:
Shared foundation:
- All deployments go through the platform
- All deployments are logged and auditable
- All deployments have rollback capabilities
- All deployments meet baseline security requirements
Differentiated controls:
- App deployments: code quality, security vulnerabilities, integration tests
- ML deployments: model performance, bias testing, drift monitoring, explainability
- Data pipelines: data quality, lineage, freshness, cost controls
Each track has different gates, different reviewers, different automation. But they’re all part of the same platform, same audit trail, same observability.
The Hard Part
Implementing this requires:
-
Sophisticated platform architecture that can handle different workflow types with different requirements
-
Clear governance frameworks that define what controls apply to which workload types and why
-
Organizational clarity about who reviews what—because ML governance isn’t a job that app-focused security teams are trained for
-
Tooling that doesn’t exist yet for automated ML governance checks (bias detection, explainability validation, drift monitoring setup)
-
Executive buy-in that governance complexity is necessary, not a sign of platform failure
That last one is hardest. When you tell the board “we built a unified platform but we need four different governance processes,” it sounds like you failed at unification. But it’s actually the only way to unify safely.
The Bigger Question
Here’s what I’m wrestling with: are we trying to apply DevOps-era governance frameworks to AI-era platforms?
Most governance policies were written for app deployments. They assume the thing being deployed is deterministic code that behaves predictably. They’re designed for a world where “security vulnerability” means “SQL injection” and “compliance” means “data encryption.”
ML models break all those assumptions. They’re non-deterministic, they drift over time, they can encode bias that isn’t visible in code review, they make decisions that have regulatory implications we’re still figuring out.
We need governance frameworks purpose-built for ML. Not app governance with ML features bolted on. And we need them to be platform-native, not post-platform patches.
The Call to Action
If your organization is building unified platforms, ask these questions:
- Can your governance framework handle the difference between deploying code and deploying a model?
- Who on your security/compliance team understands ML-specific risks?
- What happens when a governance policy designed for apps blocks a legitimate ML workflow?
- Do you have differentiated approval tracks, or are you trying to force everything through the same process?
Because the unified platform without ML-aware governance is just infrastructure consolidation. The hard part isn’t running ML workloads on Kubernetes. The hard part is governing them safely without becoming a bottleneck.
And right now, most organizations (including ours) are still figuring that out.