Architecture Patterns
Communication Patterns
Background Processing
Architectural Trade-offs
Messaging
Practice
Assignment
Back end Track
Under construction
<aside>
🚧
This page is currently under construction. Please check back later.
</aside>
Implementation plan:
- What is a monolith — single deployable unit, one codebase, one database
- Advantages of a monolith: simple to develop, test, deploy, debug
- Disadvantages: scaling challenges, large codebase, team bottlenecks
- Why monolith is the right default for most projects
- What is a modular monolith — monolith with clear internal boundaries
- Module boundaries: packages, clear public APIs between modules
- Benefits of modular monolith: organized code, path to microservices if needed
- What are microservices — independently deployable services, each owns its data
- When to consider microservices: team size, scaling needs, independent deployment
- Why NOT to start with microservices: distributed systems complexity
- The progression: monolith → modular monolith → microservices
- Exercise: identify modules in the Week 7 project
The HackYourFuture curriculum is licensed under CC BY-NC-SA 4.0

*https://hackyourfuture.net/*
Found a mistake or have a suggestion? Let us know in the feedback form.