Канал. Продукт. Платформа.
Эволюция подходов к развитию мобильного банка Тинькофф
Эволюция подходов к развитию мобильного банка Тинькофф
Эволюция подходов к развитию мобильного банка Тинькофф
CTO мобильного банка, онлайн-привлечения и не только
Курирую наши интервью по System Design и Troubleshooting
Для кого доклад
Зачем масштабировать разработку?
Как сделать это эволюционно, не проседая по бизнес-задачам?
Какую целевую топологию выбрать для ваших команд?
Как сбалансировать платформенную и продуктовую разработку?
Мобильный банк: канал, продукт, платформа
2006 — основание компании, 2008 — интернет-банк
2011 — появление мобильного банка
2015 — мобильный банк как топовый продукт
2019 — платформа, 2022 — что дальше
2006–2011: от почты до первого приложения
Как всё начиналось (2006)
На старте только кредитные карты
Прямые продажи почтой
Взаимодействие с клиентами через call centers
Появление мобильного банка как дополнительного канала
Для старта были выбраны базовые услуги
Первую версию сделали подрядчики на заказ
Требования к приложению писались поэкранно
Планирование шло версиями с заранее определённой функциональностью
2015: разработку перенесли внутрь
Мобильный банк как продукт
Заказчики: банк для физлиц, для юрлиц, страховая
Общая IT-команда ~20 человек с общей приоритизацией
Крупные релизы примерно раз в квартал
Монолитное приложение и Mother API
Пока продуктов немного, а команда небольшая
Было несколько основных продуктов, ресурсы шли им
Команда была небольшой — ~50 человек к 2019 году
Приоритетами получалось управлять вручную
Основной фокус — на расширении функциональности
2019: вертикали, команды и архитектура
Развитие группы и IT-ландшафт
2006–2019: от монолайнера до SuperApp
Вертикали: физлица, SME, инвестиции, страховая
…мобильный оператор и нефинансовые сервисы
И платформы: data, ML, origination, инфраструктура
Разные приложения и общая core-команда
SuperApp, приложение банка для юрлиц
Приложения инвестиций и мобильного оператора
Мобильная core-команда обслуживает всех
Она и становится платформенной командой
Новая структура команды
Banking products, Payments, Insurance products
SME products, Invest products, NonFinancial Services
Платформенные: Release, Platform, Design
…Excellence, Performance, Reliability
Три состояния одной и той же схемы
Организации проектируют системы по своим коммуникациям
Было: общая команда над слоистой архитектурой
Стало: автономные команды со своими доменами
Цель: свои модули и модульная архитектура
Release trains и инженерная культура
Команды должны работать автономно
Kanban-процессы внедряют delivery managers
Автотесты обязательны для новых фич
Fitness functions через Danger в CI/CD
Промежуточные результаты
Плюс релизы меньшего размера в промежутке
Процессы описаны, ответственность на команде и DM
Платформенные команды внедрили модуляризацию
Наладили mobile SRE и оптимизировали производительность
2022: сквозная поставка и governance
Бизнес хочет улучшений в сквозной поставке ценности
Софт стал слишком большим для одной команды
Темпы поставки устойчиво замедлились
Бизнес-сервисы опираются на разрозненные нижележащие
У каждого триггера свой набор симптомов
Команды поверх SuperApp, APIs и Backends
Метрики сквозного процесса: TTM, lead time, cycle time
Работа и с downstream, и с upstream
От API «собери данные сам» к BFF для мобильных
И к сборке read-моделей на потоке событий
Платформенный technical governance
Что такое команда и какие у неё атрибуты
Процессы development, deployment и эксплуатации
Правила показывают уровень здоровья команд
Метрики: производительность, качество, поток
Вопросы, на которые я обещал ответить
Вопросы, на которые я обещал ответить
Своей мобильной разработки на старте не было вообще
Приложение стало преимуществом — разработку внесли внутрь
Продуктов стало много — понадобилась платформа
Сквозные команды потребовали technical governance
Возьмите этот опыт и примерьте на свою ситуацию
Зачем, как эволюционно, какая топология и как сбалансировать платформу с продуктом
С финального слайда доклада
Текстовая версия выступления — bit.ly/mobileBankEvolution
В конце статьи приведены все рекомендованные материалы
polomodov.tech
Все слайды и ссылки — в Telegram-канале
Александр Поломодов, Technical Director & Fellow, Т-Технологии
@book_cube