← All articles

Cloud

Add Fewer Services. Design Them Better. Your Cloud Runs Cleaner

Introduction

Modern cloud projects often fall into a trap: Too many tools. Too much complexity. Not enough clarity.

As cloud architects, we’re expected to balance flexibility with maintainability — and sometimes that means saying no to one more tool, dashboard, or service.

Inspired by a simple sketch, this post breaks down a principle I live by when designing scalable, reliable cloud systems:

“Add fewer services. Design them better.”

Why Cloud Bloat Happens

It usually starts with good intentions:

  • “Let’s use a different DB just for analytics.”
  • “Let’s add a second pipeline to separate staging.”
  • “We could plug in this open-source sidecar for observability.”

But over time, the architecture becomes fragile:

  • Multiple runtimes = duplicated configs
  • More managed services = more IAM policies
  • Debugging = chasing logs across 7 dashboards

Result? Your team spends more time orchestrating chaos than shipping value.

A Simpler, Stronger Approach

Here’s what I’ve found works better — and keeps projects leaner and cleaner:

1. Minimize Service Sprawl

Pick fewer core services (e.g., 1 DB type, 1 compute pattern), and go deep on them.

Example: One well-configured GKE cluster with Workload Identity often outperforms juggling Cloud Run, GCE, and App Engine side-by-side.

2. Standardize Patterns

Establish architectural templates that teams can reuse confidently.

Example: A shared Terraform module for VPCs or a common CI/CD pattern using Cloud Build + GitHub Actions.

3. Design for Debuggability

Every extra service adds a new place to fail — and a new place to forget to look.

Stick to tools that integrate well with your logging, alerting, and tracing systems.

4. Build with the End in Mind

Think of Day 2: How easy will it be to hand this over, debug it later, or cost-optimize it?

A good question to ask: “Would a new teammate be able to understand this design in under 15 minutes?”

The Visual

Sometimes the best architecture advice can be captured in a single sketch.

Sometimes the best architecture advice can be captured in a single sketch.

Left: Confusion from trying to manage too many services. Right: Clarity from thoughtful design and focus.

Conclusion

In cloud architecture, less isn’t lazy — it’s strategic.

Fewer services means:

  • Less overhead
  • Faster onboarding
  • Easier scaling
  • Fewer surprises at 2AM

So next time you’re designing that next big system, try asking:

“What can we remove without losing capability?”

Your cloud — and your team — will thank you.