Lens — What to Choose
Both designs look valid. How do you actually choose?
Each page covers one recurring design decision — the forces pulling in different directions, the options and their real trade-offs, criteria for choosing, and what to watch for after you've committed.
what kind of system are you building
System-Level Decisions
The foundational choices that constrain every downstream decision — processing model, deployment model, storage tier. Get these wrong and the rework never ends.
Platform Organization
Centralized vs. federated vs. mesh. How responsibility is distributed shapes what quality is possible and who gets bottlenecked.
how data moves end to end
Ingestion Architecture
Push vs. pull, fan-out vs. point-to-point, exactly-once vs. at-least-once. How data enters the system determines how much of it you can trust.
Orchestration Architecture
DAG-based scheduling, event-driven triggers, dependency resolution. The layer that determines whether your pipeline runs reliably or produces excuses.
Serving Architecture
Direct queries, API layers, pre-aggregated marts. The mismatch between how data is stored and how it's consumed is where most performance problems live.
how data is structured and stored
Zoning & Storage Design
Raw zones, transformation layers, serving surfaces. How you partition storage between durability, flexibility, and query performance.
Modeling Decisions
Star schemas, wide tables, normalized models. The trade-off between query simplicity and update complexity — and why the right answer depends on access patterns, not aesthetics.
cross-cutting pressures that govern every other decision
Design Under Pressure
Reliability, scalability, cost, and correctness don't optimize together. Every architecture embeds a priority ordering — usually implicit, always consequential.
Operational Architecture
Observability, SLAs, incident response, runbook design. The operational surface that determines whether you sleep well or get paged.