
Кирилл Старостин
X5 Tech
Gradle-сборка нашего большого КМП-проекта жутко тормозила: больше 20 минут IDE sync, 7 минут Android debug clean build. Миллион строк кода, 30 мобильщиков, таргеты Android и iOS, 98% переиспользование UI и логики (Compose Multiplatform).
Пробовали замерять оптимизации ручками, ударились о нестабильность окружения и гору ручной работы. Пробовали найти полноценное решение, чтобы мониторить здоровье сборки, — кроме Develocity «коробки» нет, а Develocity в России нельзя купить. Отдельные open-source инструменты решают только части проблемы. Статьи и доклады в интернете в основном про чистые Android-проекты, без привкуса KMP.
Пришлось разобраться и собрать Франкенштейна из open-source решений и самопала. Итог — MVP системы мониторинга здоровья сборки KMP проекта, которая закрывает потребность по правилу 20/80 и легко скейлится на любые проекты компании. Ключевые элементы:
Все три инструмента составляют «святую троицу», только вместе дают мощную синергию.
Несмотря на то что проект KMP, — выгоднее всего фокуситься на мониторинге именно Android debug-сборки. Важно не забыть про IDE sync, однако измерять его крайне сложно — обсудим, как с этим жить. iOS-билд — последний по приоритету, однако тоже важно учесть.
Система уже себя оправдала, расскажу про реальные кейсы ценности, например:
Дам практические рекомендации, как минимальными усилиями поднять аналогичный инструмент в рамках любого крупного проекта. Помогу понять, как продавать оптимизации сборки руководству.

X5 Tech