https://javascript.plainenglish.io/domain-driven-design-for-a-modular-monolith-bridging-the-gap-between-microservices-and-monoliths-2d2521196dd8