Infrastructure Signals

What strong and weak infrastructure reasoning sound like. Green flags start from the workload, name what stays theirs after adopting a managed service, and refuse complexity under pressure. Red flags are the sentences that precede the incident.

Green flags11

Starts from the workload and its requirements, not from a service name.

Infrastructure is derived, not chosen from a catalogue. The first question is what the application needs, not which product to buy.

Workload-First Thinking
Prefers a managed service when it removes operational burden that is not the team's edge — and says what stays theirs.

Managed is a boundary shift, not an abdication. Naming the remaining half is the sign they understand it.

Managed Databases
Draws the network boundaries and can say what is reachable from where.

Public, private and internal are the vocabulary of every infrastructure security conversation.

Public and Private Subnets
Applies least privilege and reasons about blast radius rather than compliance.

"What does an attacker get if this identity is compromised" is the question a policy is actually answering.

Least Privilege in Infrastructure
Plans backup *and* recovery, and has restored something on purpose.

Backups are a storage job; recovery is an operational capability. Only one of them is tested by accident.

Restore Testing
Names which infrastructure signals they would watch, including the ones that lie.

Knowing that the health check stays green through an egress outage is worth more than knowing it exists.

Infrastructure Observability
Asks whether replicas are actually in different failure domains.

Redundancy that shares a failure domain is cost without benefit, and it looks identical on a diagram.

Failure Domains
Brings up cost unprompted, as a design constraint rather than a footnote.

Egress, idle capacity and per-zone resources change architectures. Ignoring them is a design error, not a finance one.

Cost Engineering
Declines Kubernetes or multi-region when the workload does not justify it.

Refusing complexity under pressure is harder and more valuable than adopting it.

Kubernetes Is Not Always Needed
Automates repeatable infrastructure and expects changes to be reviewed.

A change nobody could review before it happened is a change nobody can explain afterwards.

Infrastructure as Code
Distinguishes application responsibility from infrastructure responsibility.

Most production incidents are argued about in the gap between those two, and it should not be a gap.

Shared Responsibility

Red flags10

"Kubernetes, because production."

Production is not a workload description. Kubernetes solves placement, restarts, rollout and discovery at a scale many systems never reach, and it adds a distributed system to operate.

Kubernetes Is Not Always Needed
"Put everything in a public subnet — it is easier."

It is easier, and it exposes every component to the internet directly. Public reachability should be a decision per component with a reason.

Public and Private Subnets
"Use an admin role so the permissions work."

It makes the error go away and turns any compromise of that workload into a compromise of the account.

Least Privilege in Infrastructure
"It is a managed database, so we do not need backups."

The provider protects against hardware failure. It does not protect against a bad migration, a wrong DELETE, or credentials that can drop the database.

Backup Strategy
"We are multi-region, so we are highly available."

Multi-region compute in front of one primary database in one region is single-region availability with a larger bill and more moving parts.

Multi-Region Deployment
"Serverless is always cheaper."

It is cheap at low and spiky utilization and expensive at sustained high throughput. The cost shape differs; the ranking does not hold in general.

Serverless Trade-offs
"Containers are basically lightweight VMs."

They share the host kernel. That is why they start fast, and it is also why the isolation boundary is weaker.

Containers vs Virtual Machines
"Terraform state does not really matter."

State is how the tool knows what exists. It holds sensitive values, it must be locked, and losing it means reconciling reality by hand.

State: The File That Makes It Work and the File That Will Hurt You
"Scale when CPU hits 100%."

By the time the decision is made, capacity is still minutes away — metric window, provisioning, image pull and warm-up. You scale on the approach, not the arrival.

Startup Time & Cold Start
"Security is the cloud provider's job."

They secure the infrastructure. Your network boundaries, identities, policies, secrets, patches and data are yours, and that is where breaches happen.

Shared Responsibility