-
Initial State: The process starts with a Layered Monolith.
-
Transaction Frequency: Strong and frequent transactions lead to Clean/Hexagonal architecture within the monolith.
-
Maintainability Focus: Long-life products with a focus on tests and maintainability trigger team-size evaluations.
-
Monolith Retention: If the product is not long-lived, the recommendation is to maintain the monolith.
-
Team Capacity (Small): Teams of 5–12 engineers should use Clean/Hexagonal within the monolith.
-
Modular Monolith: This is the default intermediate path when team or infrastructure criteria are not fully met.
-
Scaling Rhythm: If a domain scales differently, it should be extracted individually.
-
Infrastructure Requirements: Transitioning to microservices requires solid CI/CD, observability, and tracing.
-
Team Capacity (Large): 12–15+ engineers or a need for independent releases triggers the move to microservices.
-
Traffic Patterns: Irregular or global traffic suggests a Partial Serverless approach.
-
Consistency Model: Accepting eventual consistency leads to EDA/CQRS , whereas rejecting it requires maintaining simple synchrony.
Last active
December 29, 2025 16:06
-
-
Save tech-andgar/d27fbf540d513edffedbb9069e6ce454 to your computer and use it in GitHub Desktop.
Algorithm for choosing architecture (source https://www.youtube.com/watch?v=q3YQy1lJutw) sa
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment