В этом выпуске подкаста про инсайты ко мне в гости пришел Павел Лакосников для того, чтобы поговорить про управление архитектурой в крупной компании:) Павел руководит юнитом architecture governance в Авито, распилил один монолит, а также любит метрики. Пришел в Авито 9 лет назад на позицию разработчика. За время подкаста мы обсудили темы: - Как Павел начал свою карьеру в IT - Как дизайн игр связан с архитектурой - Как от надежности приложений перейти к их архитектуре - Как мерить надежность и архитектуру, какие метрики бывают - Зачем нужны процессы и стандарты - Как происходит эволюция процессов разработки - В чем роль платформ при создании сложных систем - Какие советы можно дать инженерам, что хотят прокачивать свои навыки Timeline: 00:00 - Знакомство с гостем 00:01:53 - Важность насмотренности в архитектуре 00:05:59 - Путь Павла в IT 00:11:31 - Переход в разработку 00:13:13 - Геймдизайн как драйвер интереса 00:15:48 - Важность понимания клиента 00:17:27 - Кроссфункциональная работа 00:20:40 - Архитектура и геймдизайн 00:24:02 - Архитектурные решения или ADR (architecture decision records) 00:26:02 - Определение архитектуры 00:27:51 - История работы в Авито 00:30:25 - Проблемы и решения при переходе к микросервисам 00:34:20 - Примеры неудачных решений 00:37:59 - Развитие архитектуры и изменения в процессах при переходе на микросервисы 00:40:52 - Проблемы и решения в процессе релизов 00:42:59 - Создание команды по надежности и ее роль 00:46:22 - Сравнение с Google и другими компаниями 00:49:37 - Проблемы измерения надежности 00:52:46 - Разделение технической и продуктовой надежности 00:55:08 - Критичность компонентов 00:58:24 - Приоритизация и аргументация изменений 01:00:24 - Архитектура и надежность 01:02:14 - Модель качества софта - обсуждение whitepaper “Software Quality“ от Google 01:04:04 - Процессы и качество 01:07:27 - Предсказуемость и процессы 01:09:47 - Влияние на поведение 01:10:58 - Параллели с квантовой физикой 01:13:28 - Ограничения и ответственность 01:14:31 - Архитектурные гайдлайны и эволюционные изменения 01:17:32 - Инструментализация решений 01:19:44 - Взаимодействие между командами 01:23:38 - Консультационные услуги и дизайн-ревью 01:25:29 - Эволюция подходов к разработке 01:27:51 - Эксперименты, тестирование и научный подход 01:32:29 - Проблемы измерения архитектуры и тестирование метрик 01:37:37 - Метрика взаимодействия команд 01:38:36 - Идеальная архитектура 01:40:42 - Влияние изменений на систему 01:43:55 - Coupling и его влияние 01:49:27 - Эволюционная архитектура и архитектурные характеристики 01:52:43 - Инструменты для фиксации архитектурных характеристик 01:55:26 - Метрики и их использование 01:58:40 - Проблемы с универсальностью метрик 02:01:36 - Оценка эффективности архитектуры 02:02:47 - Архитектура и её влияние 02:04:34 - Измеримые показатели архитектуры 02:05:51 - Developer productivity и цели разработчиков 02:08:28 - Процессные улучшения и метрики 02:11:27 - Визуальное проектирование и стандартизация 02:13:19 - Челленджи и подходы к архитектуре 02:14:42 - Проблемы растущего технологического ландшафта и DOMA от Uber 02:19:23 - Проблемы стандартизации и адаптации 02:24:42 - Платформенная архитектура и обратная связь 02:27:57 - Централизация фидбека 02:28:57 - Пример с код-ревью 02:32:33 - Советы для инженеров 02:35:50 - Заключение
Hide player controls
Hide resume playing