Cookie Preferences
We use cookies to enhance your experience, analyse site traffic, and support our marketing. You can customise your preferences or accept all cookies. See our Privacy & Cookie Policy for details.

Multi-Cloud Architecture

Kubernetes Isn't the Platform, It's the Kernel

Multi-Cloud Architecture

6 min read

Handing developers raw `kubectl` access and calling it a platform is a common early-stage mistake, repeated often enough that the pattern of what goes wrong is now completely predictable.

Kubernetes gives you orchestration primitives, not a developer experience — the gap between the two is exactly what an internal platform is supposed to fill, and skipping that layer shows up as developer frustration within a few months, every time.

What Kubernetes deliberately doesn't give you

Self-service deployment with sane defaults, golden paths for common service shapes, and guardrails against common misconfiguration are not Kubernetes features — they're platform engineering work layered on top, by design, because Kubernetes is intentionally a flexible, unopinionated substrate.

Expecting the kernel to behave like the platform is the root cause of most "Kubernetes is too complicated for developers" complaints — the complaint is accurate, but the fix is building the missing layer, not abandoning the substrate.

The actual platform layer that closes the gap

A thin, opinionated abstraction — templated manifests, a service catalogue, and sane default policies baked in — lets most developers never touch a raw Kubernetes object directly while still running on it underneath, which is precisely the golden-path pattern covered in our devops coverage of internal developer portals.

Kubernetes was never supposed to be the thing your developers interact with directly. That was always meant to be someone else's job.MNB Cloud Practice

Key actions

  • Build a platform abstraction layer before exposing raw Kubernetes to developers
  • Provide golden paths and sane defaults for common service shapes
  • Bake guardrails against common misconfiguration into the abstraction
  • Treat developer complaints about complexity as a missing-platform signal

Discuss this with an architect →