advanced
Micro-frontends
Делите frontend delivery по independently owned product areas только когда team autonomy перевешивает runtime, UX и integration complexity.
Micro-frontends делят frontend delivery по независимо владеемым product areas — checkout, account, catalog — с отдельным deploy pipeline и командой. Интеграция на runtime через module federation, iframes, web components или shell, который собирает routes. Компромисс: автономия команд против единого UX, дублирования bundle, cross-app navigation и согласованных design tokens.
Выбирайте паттерн, когда организационные границы и cadence релизов важнее технической связности. Модульный монолит с feature folders часто дешевле, пока несколько команд не блокируют друг друга на каждом релизе.
На интервью: объясните, когда не стали бы дробить frontend, как решаете shared auth, routing, styling и error boundaries, и какую модель runtime integration выбрали.
Типовые ошибки: разрез по техническому слою вместо business capability; дублирование зависимостей и design system; игнорирование стоимости загрузки нескольких приложений; micro-frontends как default, а не организационное решение.
Чеклист:
- Назовите границу ownership и независимость релизов.
- Опишите механизм интеграции и обязанности shared shell.
- Сравните trade-offs по bundle size, latency и UX consistency.
- Укажите стратегию rollback и versioning между micro-apps.