Software-architecture Notes

Collection of software development notes related to software-architecture.

Domain-Driven Design: Defining and Enforcing Domain Invariants

A practical guide to making Domain-Driven Design work by defining domain invariants and enforcing them through code. Covers why most teams skip this step, how to design interfaces that prevent invalid states, and how to recognize when a codebase is truly following DDD.

domain-driven-designddd

Software Engineering Is About Trade-Offs, Not Shipping Code

Why your value as a software engineer isn't how fast you ship code but your ability to understand trade-offs and risk. With AI accelerating code generation, this skill matters more than ever.

software-engineeringai