
«Мы делили апельсин» или эволюция за 3 года
Как развивалась архитектура публичного веба крупного финтеха с 2016 по 2019

Как развивалась архитектура публичного веба крупного финтеха с 2016 по 2019
Как развивалась архитектура публичного веба крупного финтеха с 2016 по 2019
Acquisition Department и процесс
Frontend: монолит → микрофронтенды
CMS: шаблоны → редактор блоков
Персонализация: A/B → ML, и уроки
Что у нас под капотом
Публичный веб и системы вокруг него · ~60 разработчиков
Неавторизованный веб флагманов
Безрелизная CMS для веба и мобильных
Персонализация и A/B-тесты
Автоматизация каналов привлечения
Что происходит между запросом пользователя и показом страницы
User → LB → Frontend → CMS → Personalization → DataStore
На них и сфокусируемся
Story #1 — от монолита к микрофронтендам
Стартовая точка истории
Прежде чем что-то менять — понять
Познакомиться с командой
Погрузиться в процесс разработки
Понять боли команды и стейкхолдеров
Сформулировать тактический план
Из монолита — к компонентной модели
Разделить ответственности
Ослабить связанность
Закрепить зоны за командами
Согласовать контракты
Чтобы компоненты катились независимо
Когда платформа есть — растим продуктовые команды
Свой фреймворк — tramvai
Компоненты — внутрь фреймворка
Первое микрофронтенд-приложение в одной команде
Проверили A/B-тестом
Story #2 — от монолита к микросервисам и cloud native
Стабилизировали legacy и собрали архитектурную команду
Стабилизировать legacy
Архитектурная команда и общий стек
Десятки сервисов от продуктовых команд
Деплоить оказалось некуда
Платформа вместо центрального органа согласований
Команду расформировали
12 factor и примитивы k8s
Фреймворки для бэка и фронта
Почти весь прод — в k8s
Story #3 — от A/B-тестов к ML-предикторам
Стартовая точка третьей истории
Один основной заказчик
Коробочный продукт в проде
Свой C++ в альфе
Один разработчик на проект
Команда выросла, MVP довели до релиза
Расширили команду
Довели MVP до релиза
Заменили коробочный продукт
Бизнес доволен и хочет больше
Что мы поняли про эволюцию архитектуры
Три системы — три пути
MVP и маленькая база — замена целиком
Средняя база — параллельная разработка и болезненная замена
Большая база и команда — долгая эволюция
эволюция важнее революции — миграция шагами
Building Microservices — Sam Newman (2015)
Building Evolutionary Architectures — Ford, Parsons, Kua (2017)
The Twelve-Factor App — 12factor.net
Frontend Architecture for Design Systems — Micah Godbolt (2016)
polomodov.tech
Все слайды и ссылки — в Telegram-канале
Александр Поломодов, Руководитель разработки, привлечение Tinkoff.ru
@book_cube