Splitting up a large front-end dev team requires 3 key ingredients: ✅ A...
Splitting up a large front-end dev team requires 3 key ingredients:
✅ A design system
✅ Designers that use the design system as their guide
✅ A component library that implements the design system.
With these 3 keys, separate teams can deliver a single, cohesive UI.
When one team creates a component or logic that others want to use, they can add it to the reusable library.
This approach maintains clear separation of concerns between teams, but avoids copy/paste when reuse opportunities pop up. 👍
I often help companies create design systems and component libraries. These patterns become necessary once a UI team becomes too big to manage. To split the team, you need standards for design and patterns for code reuse.
This supports building a cohesive app, while separate.
A monorepo can also help if the teams prefer to continuously integrate. Though a cross-team monorepo blurs the lines of responsibility, adds noise, and slows builds.
Separate repos with shared libraries creates a clear separation of concerns between teams.