Optimizing for Time: Dark Matter (Рубрика DevEx)
С большим интересом посмотрел доклад с концеренции DPE Summit Карима Накада (Karim Nakad) из запрещенной в России компании Meta. Мне понравилось название, которое отсылает к космологическим теориям, объясняющим через темную материю состояние нашей Вселенной. Здесь эта метафора относится к тому, что мы часто фокусируемся на видимом спектре разработи: на улучшении IDE и ускорении сборок, но игнорируем огромные затраты времени на ежедневную рутину. Собственно, спикер называет "тёмной материей" невидимую нагрузку на сотрудкниов: чтение корпоративных чатов, стендапы, написание документации и помощь коллегам. Измерение этих скрытых активностей помогает выявить истинные причины снижения скорости работы технических команд.
Мне особенно нравится разбор метрик продуктивности Meta, про которые я говорил и в других постах, например, при разборе выступления "Measuring the Impact of AI on Developer Productivity at Meta" с этой же конференции. Но в этом выступлении этот рассказ сфокусирован именно на метриках. Отдельно отмечается, что в Meta применяют агрегированные показатели для анализа процессов, строго запрещая их использование для индивидуальной оценки инженеров во избежание накруток. Сами метрики такие
- By Tool -» TSD (Time Spent Coding per Diff): отражает время кодинга на один пулл-реквест, что позволяет инфраструктурным командам оценивать эффективность инструментов разработчика. - By Intent -» PCT (Percent Time Coding): показывает долю чистого программирования по отношению ко всем остальным задачам, помогая сокращать количество лишних встреч. Метрика важна для продуктовых команд - By Workflow -» WTS (Workflow Time Spent): отслеживает затраты времени в разрезе конкретного процесса (например, устранения инцидента) для поиска узких мест при переключении между системами.
- By Value -» но здесь не показали метрики, а привели метафору про карту и про движение в нужном направлении (как бы это нужное направление не измерялось)
Если говорить про подучу, то мне понравились слайды про фрагментацию дня. На слайдах видно, как день инженера распадается на десятки коротких переключений между IDE, чатом, календарём, review tools, notebook и SQL. Интересно, что Meta предлагает смотреть не только на raw coding time, но и на coding intent time - то есть считать инженерной работой не только минуты в редакторе, но и связанные с задачей походы в чат, wiki, SQL и документацию. Иначе очень легко оптимизировать не то место.
Мне показались полезными идеи для инженеров о том, что надо защищать длинные focus-блоки, группировать коммуникации, глушить некритичные уведомления и перестать думать, что "настоящая работа" происходит только внутри IDE. А руководителям полезно посчитать стоимость переключения контекста и сравнить со стоимостью медленного билда; отдельно посмотреть на фокусное время команды, структуру календаря, объём асинхронного шума и только потом уже докручивать инструментарий. Иначе можно ускорить pipeline и всё равно потерять пропускную способность команды.
#Engineering #Software #Bigtech #Productivity #Management #Leadership #Processes #AI #ML #Architecture #DevEx #DevOps