Breaking a Monolith

A single centralized team can’t make change happen by working against the momentum of hundreds of developers adding features.

To modularize a large monolith though, we need to make complex change happen on a large scale. Even if a centralized team could make it happen, the design would degrade once the team switches its focus to something else.

That’s why making a fundamental architecture change to a system that’s being actively worked on is in large part a people problem. - The State of Shopify’s Monolith / HN

We automatically triage exceptions to components, enabling teams to act on them without having to dig through the sometimes noisy exception stream for the whole monolith. And with each component explicitly owned by a team, whole-codebase chores like Rails upgrades are easily distributed and collaboratively solved.

Written on September 17, 2020, Last update on September 17, 2020
architecture monolith