Architectural Patterns and Anti-Patterns Questions

Architecture-level patterns and the anti-patterns that signal a wrong turn. Patterns: layered and n-tier architecture, including where cross-cutting concerns like authentication, rate-limiting and tracing belong, dependency injection trade-offs, and thin-versus-fat controller design; hexagonal (ports and adapters) and clean architecture; CQRS and event sourcing; backend-for-frontend; plugin (microkernel) extension models; and the coupling, cohesion, encapsulation and separation-of-concerns principles behind them, including when each applies and what it costs. Anti-patterns: distributed monolith, chatty services, shared-database coupling, cyclic service dependencies, leaky abstractions that expose internal schemas, and golden-hammer pattern adoption. Covers the detection signals (deploy coupling, call-graph fan-out, change amplification, trace evidence), incremental remediation, and architecture governance that keeps smells from recurring. This is about diagnosing and fixing the smell in an existing design, not the monolith-versus-microservices decision itself.

MediumSystem Design
89 practiced

Describe a classic three-tier architecture (presentation, application, data) and explain, from an SRE's perspective, how you'd design isolation, scaling, and security boundaries between tiers. Include how ingress routing maps to tiers, what belongs in which tier, and where you'd place shared state.

EasyTechnical
95 practiced

What is a 'distributed monolith' anti-pattern? Describe two signs that a microservices deployment has effectively become a distributed monolith, and propose one concrete mitigation step.

MediumTechnical
89 practiced

Your team moved to microservices, but engineering velocity has stalled: releases need cross-team coordination, on-call keeps getting paged for cascading issues, and a schema change in one service quietly breaks two others. Which architectural anti-patterns do you suspect are at play? For each one, give a concrete detection signal you'd look for in monitoring or traces, and one pragmatic, incremental remediation step.

MediumTechnical
121 practiced

From an SRE's operational perspective, walk through event sourcing and CQRS: what do they change about ordering guarantees, replayability, and storage growth, and how do those properties affect how you'd monitor the system and debug an incident when something goes wrong?

EasyTechnical
91 practiced

Describe a typical three-tier (multi-tier) layered web architecture: presentation/UI, application/business logic, and persistence/data. For each tier, name its responsibilities, then trace how a single request flows through the system, from the client through ingress, load balancing, and the application tier down to the data tier and back. What are the trade-offs of this architecture (scalability, deployment complexity, testability) compared to a simpler two-tier design or a flatter, event-driven one?

That is every published Architectural Patterns and Anti-Patterns question for Site Reliability Engineer (SRE) so far. Browse the other topics in this category, or practice this one interactively.