GGoldwater.dev
All articles
Cloud Architecture7 min read·

Cloud Architecture Without the Over-Engineering

You probably don't need microservices, a service mesh, and multi-region active-active. Here's how to right-size architecture to the problem in front of you.

Complexity is a loan. You take it on hoping for future scale, and you pay interest every day in cognitive load, debugging time, and onboarding friction. Good architecture borrows only what the business will actually need.

Match the architecture to the load

A monolith on a managed platform will carry most products further than their founders expect. Reach for distributed systems when a specific, measured constraint forces your hand — not because a conference talk made it sound inevitable.

  • Start with a modular monolith and a managed database.
  • Extract a service only when a team or scaling boundary demands it.
  • Make the seams clean so extraction is cheap later.

Design for the failure you'll actually have

Most outages are mundane: a bad deploy, a full disk, an expired certificate, a runaway query. Invest in observability, rollbacks, and backups before exotic multi-region failover.

Resilience is mostly the unglamorous stuff: health checks, timeouts, retries with backoff, and a deploy you can undo in one command.

Let the bill be a design review

Cloud cost is a lagging indicator of architecture. A surprising bill is usually telling you something true about your data flows. Read it like a code review.

WG

Wes Goldwater

Director of Engineering at Prosigliere · writing the no-hype playbook for cloud & AI.

Keep reading