Orchestration is not architecture
coreintermediateKubernetes automates a set of mechanical decisions once they have already been made: how many replicas of a pod to run, how to route traffic between them, how to restart a failed container, how to roll out a new version without downtime. None of that automation makes the underlying design decisions for you — it does not decide whether a service should be split out at all, what data that service owns, which calls are synchronous versus async, where the state lives, or what happens when a downstream dependency is slow or down. Fluency with kubectl, Helm charts and YAML manifests is an operations skill: it tells you the orchestration layer is being run correctly. System design is a different skill: it explains why the system underneath that layer is shaped the way it is, and it is the one Kubernetes cannot supply for you.
Think of it as
Kubernetes is the autopilot on a plane, not the flight plan. Autopilot holds a heading, an altitude and a speed extremely well once someone has decided where the plane is going, when to climb, and when to divert around weather — but ask the autopilot why the flight is routed through a particular corridor and it has no answer, because that was never its job. A pilot who can only fly on autopilot and cannot explain the flight plan is not actually qualified to fly; an engineer who can only operate a Kubernetes cluster and cannot explain the architecture it is running is in the same position.
What we're doing: Contrast an operations-only answer with an architecture answer to the same design-review question.
- 7
- Every fact here is true and can matter operationally — but none of it says why two services exist or what happens to correctness under slowness.
- 14
- This answer names the actual reason for the boundary (blast-radius isolation around unpredictable third-party latency) and the actual failure behavior (eventual consistency via an event), independent of which orchestrator runs it.
Why this works: The two answers describe the exact same running cluster — same Deployments, same Service, same Ingress — but only the second one answers what a design review is actually asking. The Kubernetes facts in the first answer are correct and irrelevant to the question; that gap is the entire point of this concept.
Reaching for manifest details when asked a service-boundary question
Wrong
Better
What you see: Asked "why is this its own service" or "what happens when X is slow," the answer describes replica counts, probes, and autoscaling policy in detail but never states a reason the boundary exists or what happens to correctness or user experience under failure — the interviewer or reviewer has to ask a second, more pointed question to get an actual design answer.
Why: YAML and kubectl output describe the current configuration of a decision, not the decision itself. Reciting configuration is a fluent, confident-sounding answer that can pass as expertise in casual conversation, which is exactly why it is a common failure mode — it takes a second, sharper question ("but why does the boundary exist") to expose that no design reasoning was ever behind it.
- Architecture decisions — service boundaries, data ownership, sync vs. async calls, failure isolation — made by the engineer, before any manifest exists
- Orchestration layer (Kubernetes) — replicas, restarts, rollout strategy, service discovery, autoscaling — mechanically enforces whatever shape it is given
- Running cluster — kubectl / Helm / YAML — what an operator interacts with day to day
Remember: Kubernetes automates mechanics that already assume a design — replica counts, rollouts, routing, restarts — it does not decide service boundaries, data ownership, or failure behavior. Fluent kubectl/Helm/YAML use answers "is the orchestration layer run well," not "is the system underneath it well designed" — a design review or interview is asking the second question, and reciting manifest details when asked it is the tell that the architecture was never actually reasoned through.

