Developer Productivity for Humans, Part 4: Build Latency, Predictability, and Developer Productivity
Разбор квази-эксперимента Google: как latency и predictability сборок влияют на productivity, переключение контекста и скорость выполнения задач.
Практика чтения для этого источника ещё не опубликована
Ниже доступен готовый редакционный brief из прежнего каталога. Он даёт контекст, но не засчитывается как lab.
Открыть оригиналГотовый редакционный разбор
Он сохранён из прежней версии каталога и расположен после самостоятельной практики, чтобы не подменять чтение оригинала готовым пересказом.
Источник
Обзор исследования на tellmeabout.tech
Разбор paper про влияние build latency и predictability на developer productivity.
Источник
Обзор исследования на tellmeabout.tech
Разбор paper про влияние build latency и predictability на developer productivity.
Глава основана на разборе квази-эксперимента Google: как изменения в build-инфраструктуре влияют на поведение разработчиков и итоговую продуктивность. Ключевой тезис - предсказуемость сборок важна не меньше, чем их абсолютная скорость.
Исследовательские вопросы
- Насколько build latency влияет на developer productivity?
- Что важнее для продуктивности: средняя длительность сборки или ее предсказуемость?
- Как быстро разработчики адаптируются к изменениям latency и predictability в build-системе?
Публикация
Google Research
Страница публикации с DOI и ссылкой на IEEE/Computer Society.
Публикация
Google Research
Страница публикации с DOI и ссылкой на IEEE/Computer Society.
Как был поставлен эксперимент
Компания
Квази-эксперимент в production
Дизайн
Build latency + predictability
Фокус
A (топ 15%) и B (остальные)
Группы
- Топ-15% инженеров (группа A) перевели на новые backend execution servers с заметно лучшей сборкой.
- Остальные разработчики (группа B) остались на прежней инфраструктуре и выступили контрольной группой.
- Для группы A median build latency снизилась примерно с 99 до 59 минут (около 40%).
- Анализировали не только длительность build, но и predictability: насколько стабильно сборки укладываются в ожидаемое время.
Ключевые наблюдения
Latency и predictability дают разный эффект
По данным обзора, для команды со средним build около 10 минут рост предсказуемости на 50% сопоставим с уменьшением latency примерно на 22%.
Прокси по производительности
Авторы связывают улучшения build-контура с эквивалентом порядка 24 дополнительных LOC в неделю и до 14% ускорения на небольших задачах.
Меньше вредных переключений
Разработчики реже переключались на побочные активности во время ожидания сборки (в обзоре отмечено снижение около 21% для code review).
Адаптация не мгновенная
Эффект усиливался в течение 2-3 месяцев, что важно учитывать при оценке ROI инфраструктурных изменений.
Практический вывод
Если фокусироваться только на снижении среднего времени сборки, часть эффекта теряется. Для инженерной среды критична предсказуемость: разработчик может лучше планировать цикл "изменение - сборка - проверка" и меньше теряет контекст между итерациями.
По обзору paper, разные команды требуют разных build-SLO. Универсального порога нет, поэтому полезнее управлять динамикой и predictability, чем сравнивать себя с чужими абсолютными цифрами.
Что делать команде
- Мерить build-систему в двух осях: latency и predictability, а не только среднее время.
- Для команды определить рабочие пороги p50/p90 и отслеживать стабильность хвостов распределения.
- Связывать build-метрики с продуктовыми outcome-метриками команды, а не ограничиваться отчётом CI.
- Оценивать эффект изменений минимум 2-3 месяца, чтобы увидеть фазу адаптации.
- Планировать улучшения инфраструктуры как непрерывную программу, а не разовый тюнинг пайплайна.
Связанные главы
What Improves Developer Productivity at Google? Code Quality
Как Google связывает качество кода, technical debt и продуктивность в panel data анализе.
Developer Productivity for Humans, Part 6
Почему interruptions и friction напрямую влияют на инженерный flow.
Measuring Productivity: All Models are Wrong But Some are Useful
Практический фреймворк для проектирования метрик продуктивности без искажений.