Масштабируемый UI. Внедряем, тестируем, ускоряем разработкуТехнологии Android
В Android-мире почти 5 лет. Начинал с системного программирования под Andorid, потом перешел в разработку приложений. До Badoo учавствовал в разработке мобильного приложения Тинькофф Банка для среднего и малого бизнеса. Катается на сноуборде, любит футбол.
Мы разрабатываем несколько приложений для миллионов пользователей по всему миру, и многие фичи запускаются под А/B-тестами. В силу специфики сочетание скорости и качества разработки для нас критично. Однако при такой большой кодовой базе, множестве А/B-тестов и наличии нескольких поколений “легаси” общих UI-компонентов, держать ритм становилось все сложнее.
Решением стала разработка единой дизайн-системы Cosmos, которая упростила общение дизайнеров и разработчиков и значительно ускорила и упростила процесс разработки. Я расскажу, как мы масштабировали этот подход, как глобально рефакторили приложение, и как нам в этом помогли наши in-house-решения по тестированию. Как параметризуем UI-компоненты синхронно на всех платформах при помощи дизайн-токенов и как это упрощает структуру UI-модулей в масштабе нескольких приложений. Поделюсь, какие трудности были в процессе масштабирования UI, и как этот подход значительно улучшил качество разработки.