
2/21/2019
What this post added
This post details Shopify's transition from a monolithic architecture to a modular monolith. It explains the challenges of the monolith, the drawbacks of microservices, and the benefits of a modular monolith. The implementation involved a 'Componentization' project, re-organizing code by real-world concepts instead of software concepts, and isolating dependencies by defining clean interfaces and exclusive data ownership for each component. A tool called 'Wedge' was developed to track progress towards isolation and highlight violations of domain boundaries and data coupling across boundaries.