Состояние DevOps на 2016 год
Компания Puppet (как ни удивительно — это разработчики одноименной системы управления конфигурацией) опубликовали свой очередной ежегодный отчет о состоянии DevOps.
Они опросили 4600 инженеров со всего мира и по результатам этого опроса составили отчет на 55 страниц. Я кратко резюмирую здесь их результаты для тех, кому лень читать оригинальный отчет.
Компания, которые практикуют DevOps, выкатываются в 200 раз чаще, в 24 раза быстрее восстанавливаются после сбоев, в 3 раза реже получают проблемы при внесении изменений и имеют в 2555 раз меньшее время поставки (lead time, то есть время от попадания кода в систему контроля версий до появления его в бою). Так же они тратят на 22% меньше времени на незапланированные работы и переработки, и имеют на 29% больше времени для новых разработок. Даже на борьбу с проблемами безопасности они тратят на 50% меньше времени.
Так же по результатам опроса, сотрудники таких компаний в 2.2 раза чаще рекомендуют свою компанию своим друзьями и знакомым, как место работы, плюс они гораздо сильнее вовлечены в работу компании и довольны жизнью.
В таких компаниях используются Lean методы производства, когда работа делается маленькими частями, а с потребителей продукта постоянно собирается обратная связь. Также в отчете говорится, что лидеры могут изменить культуру компании и переориентировать ее на производительные и инновационные рельсы.
В конце отчета есть достаточно сомнительная, на мой взгляд, попытка посчитать ROI (возврат инвестиций) от внедрения DevOps. Я честно пролистал этот кусок, потому что слишком гипотетический. С другой стороны, это хоть какие-то цифры, с которыми можно продавливать внедрение DevOps внутри крупных корпораций.
Также мне понравились следующие практики и принципы, про которые я знал, но никогда не слышал для них понятного названия:
- Управление тестовыми данными (Test Data Management) — достаточно понятная идея, что для тестов у вас должны быть данные, которыми надо адекватно управлять, а не тащить каждый раз огромные дампы с боевых серверов
- Встроенная безопасность (Security build in) — проверки безопасности должны являться частью продукта, и точно также делаться на всех этапах конвейера поставки, как и остальные проверки. Именно этот подход позволяет экономить 50% времени на борьбе с проблемами безопасности.
- Смещение влево (Shifting Left) — если представить процесс поставки как конвейер, у которого слева машина разработчика, а справа боевая система, то все этапы (различные тесты, проверки и т.д.) надо сдвигать как можно левее, чтобы от них была быстрая обратная связь.
Вот такой же позитивный отчет. А как с DevOps обстоят дела в вашей компании?