architecture
Practical resources about architecture for software engineers.
181 results
Designing Systems That Scale
Software architecture is the art of making trade-offs. Every pattern — from microservices to event-driven systems — solves specific problems while introducing new constraints. Understanding these trade-offs is what makes an engineer an architect.
This hub collects guides and patterns for API gateways, load balancing, circuit breakers, sagas, and service meshes. Whether you are designing a new system or modernizing a legacy monolith, these resources provide the mental models and implementation details you need.
Data Mesh Architecture — Decentralized Data Ownership
A practical guide to Data Mesh: decentralizing data ownership to domain teams, treating data as a...
Domain-Driven Design (DDD): A Practical Guide
Learn DDD fundamentals: bounded contexts, entities, value objects, aggregates, and how to model...
Event-Driven Architecture — Queues, Topics, and Streams
A practical guide to event-driven architecture: events vs commands, message brokers, patterns like...
Event Sourcing — State as a Sequence of Events
A detailed analysis into Event Sourcing: persist state changes as events, reconstruct aggregates...
GraphQL vs REST — When to Choose and How to Migrate
A decision guide comparing GraphQL and REST APIs: use cases, performance, caching, tooling, and...
gRPC in Microservices — High-Performance RPC Guide
A practical guide to gRPC for microservices: Protocol Buffers, streaming, load balancing, and...
Hexagonal Architecture — Ports, Adapters, and Testability
A complete guide to Hexagonal Architecture (Ports and Adapters): structure applications so domain...
Lakehouse Architecture — The Best of Both Worlds
A practical guide to Lakehouse architecture: combining data lake storage flexibility with data...
Layered Architecture — N-Tier Explained
A practical guide to Layered (N-Tier) Architecture: separating presentation, business logic, and...
Microservices Architecture — When to Use and When Not To
A practical guide to microservices: benefits, trade-offs, common patterns, and when to choose them...
Modular Monolith — A Pragmatic Architecture
A practical guide to Modular Monoliths: combine the simplicity of monoliths with the modularity of...
Monolith to Microservices — Migration Strategies
A practical guide to decomposing monoliths: strangler fig, branch by abstraction, and incremental...
Onion Architecture: Domain-Centric Design Guide
A practical guide to Onion Architecture: organize code around the domain, enforce inward...
Software Architecture Guide
A guide to designing software architecture: monoliths vs microservices, layered architecture, data...
System Design Interview: Framework, Examples & Practice
A practical framework for system design interviews: how to structure your answer, the concepts...
Vertical Slice Architecture: Feature-First Organization
A practical guide to Vertical Slice Architecture: organize code by feature instead of technical...
Complete Guide to Application-Level Caching
In-memory, distributed and hybrid caches at the app layer: LRU, TTL, two-tier strategies, sizing,...
Complete Guide to Cache Invalidation
Cache invalidation strategies: TTL, event-driven, versioned keys, tag-based purging, write-through,...
Concurrency Patterns Guide
Production-ready concurrency patterns: thread pools, async/await, producer-consumer, semaphores,...
ETL Pipelines: Extract, Transform, Load for Data Engineers
A practical guide to ETL pipelines: extracting data from multiple sources, transforming with...
No results found.