Бронирование авиабилетов — это сотни правил тарификации, строгая валидация данных пассажиров и тяжёлые поисковые запросы, которые нужно кешировать, не ломая актуальность цен. Любая ошибка в этой цепочке оборачивается реальными деньгами и испорченным опытом клиента.
Кодовая база росла быстрее, чем её архитектура. Новые правила добавлялись поверх старых, интерфейс собирался из разрозненных компонентов, а каждое изменение грозило сломать что-то в соседнем модуле. Команде было всё страшнее развивать продукт.