Software Architecture & Engineering Practice
Focus: building systems that survive timeโarchitecture, patterns, and engineering discipline.
System Design
Large-scale system architecture.
| Topic | Description |
|---|---|
| System Design Mastery | Scalable system design |
| Software Architecture & Design | Architectural principles |
Design Patterns
Reusable solutions to common problems.
| Topic | Description |
|---|---|
| Design Patterns Deep Dive | Classic design patterns |
| Design Patterns | Gang of Four and beyond |
Domain-Driven Design
Modeling complex domains.
| Topic | Description |
|---|---|
| Domain-Driven Design | DDD principles and patterns |
| DDD with TypeScript | DDD in TypeScript |
Engineering Practices
Professional software development.
| Topic | Description |
|---|---|
| Software Engineering Practices | Testing, CI/CD, code review |
Learning Tips
- Read architecture books: Clean Architecture, DDIA, etc.
- Study existing systems: Learn from open source
- Make tradeoffs explicit: Document decisions
- Evolve incrementally: Big rewrites usually fail
- Measure everything: Data beats opinions