learn

Architecture Decision Guide

A practical framework for designing cloud and AI systems and explaining architecture trade-offs.

Architecture

Architecture Decision Guide

Intermediate
Architecture flow
flowchart TD requirements_0["Requirements"] --> constraints_1["constraints"] constraints_1["constraints"] --> service_choices_2["service choices"] service_choices_2["service choices"] --> failure_boundaries_3["failure boundaries"] failure_boundaries_3["failure boundaries"] --> operations_4["operations"]

Overview

A requirements-first framework for choosing architecture patterns and explaining trade-offs.

Data flow

Requirements → constraints → service choices → failure boundaries → operations

Security

Least privilege, identity boundaries, encryption, secrets, logging, and trust boundaries.

Cost

Compare managed services and operational complexity against reliability, performance, and budget requirements.

Scaling

Start with expected traffic and growth, then validate capacity, availability, and failure boundaries.

Failure modes

Wrong requirements, hidden dependencies, weak recovery design, and untested operational assumptions.

Architecture Decision Guide

A good architecture is not the one with the most services. It is the one that satisfies the requirements with acceptable reliability, security, performance, cost, and operational complexity.

Start with requirements

Before selecting services, clarify:

  • Availability target and failure tolerance.
  • RTO and RPO.
  • Expected traffic and growth.
  • Data sensitivity and compliance.
  • Latency requirements.
  • Budget and operational capacity.
  • Regional and global requirements.
  • Recovery and observability expectations.

Then make the major decisions

Compute

Compare managed containers, Kubernetes, serverless, and virtual machines based on workload characteristics rather than popularity.

Data

Choose the data store from access patterns, consistency, scale, durability, latency, and operational needs.

Networking

Define ingress, egress, service-to-service communication, segmentation, DNS, private connectivity, and failure boundaries.

Security

Prefer least privilege, strong identity boundaries, encryption, secrets management, logging, and explicit trust boundaries.

Operations

Design monitoring, alerting, tracing, backups, deployment strategy, rollback, and incident response before production.

The architecture interview test

For every major decision, be able to answer:

Why this choice, what alternatives did you reject, what trade-off did you accept, and how would you change the design if the requirement changed?

Learning checkpoint

Mark this guide complete to include it in your local Engineering Journey.

Knowledge path

Connected concepts

Explore the knowledge graph

WATCH WITH THIS TOPIC