Learn It Anyway — Learning Roadmap

The Architect's Mindset

Ten topic families. Four milestones. A structured path through the decisions that define how modern software systems are built and run. Articles publish here as each topic is studied.

milestone 01

Architecture Foundations

How systems are shaped at the macro level — before a single line of code.

System Architecture

  • Choosing Your System's Structure: Monolith vs. Modular Monolith vs. Microservices vs. Serverless

    The architecture that got you to 100 users will kill you at 100,000

  • Organizing Your Codebase: Monorepo vs. Polyrepo

    It's not just a folder structure — it's a team coordination decision

  • How Services Talk to Each Other: Event-Driven vs. Request-Driven Architecture

    Why your services shouldn't talk to each other directly

  • Splitting Reads from Writes: An Introduction to CQRS

    Read and write patterns are different problems. Stop solving them the same way

  • Storing Every Change as an Event: Event Sourcing Explained

    What if you never deleted anything and could replay history?

Multi-Tenancy

  • Data Isolation Models: Shared DB → DB-per-Tenant

    One database for all customers or one per customer? The trade-off no one warns you about

  • Tenant Identification Strategies

    Subdomains, paths, headers — how your app knows who's knocking

  • Tenant Configuration & Feature Inheritance

    Global → Plan → Tenant → User. The hierarchy that runs every SaaS

  • Noisy Neighbor Problem & Mitigation

    One bad tenant can bring down your whole platform

  • White-Labeling Architecture

    When a customer wants it to look like their product, not yours

milestone 02

Core Systems

Who gets access, how services talk, and where the data lives.

Access Control & Authentication

  • RBAC vs. ABAC vs. ReBAC vs. PBAC

    Roles are not enough. Here's when they break down

  • Permission Granularity: Coarse → Row-Level

    "Can access Billing" vs. "Can edit invoice #4821 in their region"

  • Sessions vs. JWTs; Token Storage; Refresh Strategies

    Where you store your JWT is a security decision, not a preference

  • SSO / SAML / OIDC; MFA; API Auth Patterns

    Every enterprise deal will ask: do you support SSO?

  • Session Management: Concurrency, Revocation, Device Binding

    How do you log someone out of every device instantly?

API Design & Communication

  • REST vs. GraphQL vs. gRPC vs. WebSocket vs. SSE

    Picking an API protocol isn't a tech choice. It's a product decision

  • API Versioning; Pagination (Offset vs. Cursor)

    Offset pagination breaks at page 500. Here's what you use instead

  • Rate Limiting: Fixed, Sliding, Token Bucket, Leaky Bucket

    Rate limiting is not about blocking users. It's about protecting your system

  • Idempotency, Retry Safety, Exponential Backoff

    What happens when the payment request fires twice?

  • API Gateway; BFF Pattern

    Should your mobile app and web app talk to the same API?

Data Architecture & Storage

  • DB Selection: Relational vs. Document vs. Wide-Column vs. Graph vs. NewSQL

    PostgreSQL isn't always the answer. But it usually is

  • Normalization vs. Denormalization vs. Hybrid

    Normalized for writes. Denormalized for reads. Why not both?

  • Consistency Models: Strong, Read-After-Write, Eventual, Causal

    You updated your profile. Why does the page still show the old name?

  • Caching: L1/L2/L3; Eviction Strategies

    The cache that saved the database. And the one that corrupted production

  • Search Architecture; Blob Storage; Sharding & Partitioning

    LIKE queries will betray you. Here's when to move to real search

milestone 03

Full Stack Engineering

Frontend choices that affect products, backend choices that affect reliability.

Frontend Architecture

  • SPA vs. SSR vs. SSG vs. ISR vs. Streaming SSR vs. Islands

    Rendering strategy is not a framework decision. It's a product decision

  • State Management: React Query vs. Zustand vs. Redux vs. Context vs. URL

    Most global state shouldn't exist. Here's what to use instead

  • Component Architecture: Design Systems, Styling Approaches

    Build your own design system or adopt one? The honest answer

  • Bundling: Vite vs. Webpack; Code Splitting; Tree Shaking

    Your bundle is 4MB. Your users on 4G are not happy

  • Forms, Validation, Optimistic vs. Pessimistic Updates

    Optimistic UI feels fast. Until it has to roll back in front of the user

Backend Architecture & Processing

  • Service Communication: Sync vs. Async; Saga Pattern

    Distributed transactions without distributed chaos

  • Resilience: Circuit Breaker, Bulkhead, Retry Policies

    Your third-party API just went down. Does your whole system go with it?

  • Background Jobs: Queues, Cron, Workflow Engines

    Some things shouldn't happen in the request cycle

  • Distributed Locking & Coordination

    Two servers. One job. What could go wrong?

  • Config Management, Feature Flags, Secrets Management

    Feature flags are not just for A/B tests. They're your kill switch

milestone 04

Production Engineering

AI integration, infrastructure, security, and the reality of running things at scale.

Data Pipelines & AI Integration

  • ETL vs. ELT vs. Streaming vs. Hybrid Pipelines

    Batch is simple. Streaming is real-time. Hybrid is reality

  • Analytics DB: OLAP, ClickHouse, DuckDB; Data Modeling

    Your production DB is not your analytics DB. Stop treating it like one

  • Product Analytics: Build vs. Buy; Event Taxonomy

    The naming convention you skip today will haunt your data team for years

  • AI Integration: API vs. Self-Hosted; Prompt Management; Fallbacks

    What happens to your AI feature when OpenAI has an outage?

  • RAG Architecture: Vector Stores, Chunking, Hybrid Search, AI Safety

    Not all AI features need GPT-4. And not all search needs to be semantic

Infrastructure & Deployment

  • Cloud Strategy: Single vs. Multi vs. Hybrid

    Multi-cloud sounds smart. Until you have to operate it

  • Compute: K8s vs. Managed Containers vs. PaaS vs. Serverless

    Kubernetes is not a goal. It's a trade-off

  • Infrastructure as Code: Terraform vs. Pulumi vs. CDK

    If your infra isn't in code, it's in someone's memory. That person will leave

  • Deployment Strategies: Rolling, Blue-Green, Canary, GitOps

    How do you release at 3pm on a Friday and sleep at night?

  • CI/CD Pipelines; Branching; DB Migrations; Artifact Promotion

    Build once. Promote everywhere. Never rebuild per environment

Security, Observability & Scaling

  • Application Security: XSS, CSRF, SAST/DAST, Supply Chain

    The vulnerability wasn't in your code. It was in your dependency

  • Data Security: Encryption, Key Management, PII, Data Classification

    Encryption at rest is table stakes. Here's what most teams miss

  • Observability: Logs, Metrics, Traces, Profiling; SLOs & Alerting

    You can't fix what you can't see. Alert on symptoms, not causes

  • Testing Strategy: Pyramid, Contract Tests, Load Testing, Test Data

    Unit tests tell you the code works. Load tests tell you it survives reality

  • Scaling Dimensions; Bottleneck Identification; FinOps; DR & HA

    Scale is not just adding more servers. It's knowing which bottleneck to fix first

Bonus — Self-Paced

This roadmap covers modern software systems with a SaaS lens.
Topics are studied one at a time. Notes get published here as I go.