Состояние DevOps на 2017 год
В очередной раз компания Puppet совместно с DORA ( DevOps Research and Assessment — компания, которая решила активно продавать DevOps, что бы это не значило) опубликовали отчет о состоянии DevOps, который называется «2017 State of DevOps Report». Скачать его можно бесплатно, если оставить свою почту. Насколько я знаю, это единственное регулярное исследование ИТ-рынка на предмет проникновения DevOps практик.
Поскольку я уверен, что читать пятидесятистраничный документ на английском многим будет лень, я напишу здесь краткую выжимку из него, расскажу о том, что мне показалось там важным.
Начну со страшилки, Gartner предсказывает, что к 2020 году половина CIO, которые не возглавят цифровую трансформацию, будет уволено. Лидер трансофрмации должен обладать следующими качествами: иметь видение, уметь заводить команду, стимулировать к поиску новых подходов к решению проблем, поддерживать свою команду и персонально относиться к тем, кто за ним следует. С одной стороны странно, что лидерство выделено в отдельную часть отчета, с другой стороны DevOps всегда был больше про отношения людей, нежели про технологии. И также ясно, что сам по себе, без поддержки руководства, без лидерства DevOps в организации не начнется.
В 2017 выкатывать продукты быстрее начали все организации. Но у тех, кто делает это по старым подходам, количество отказов сильно возрасло по сравнению с предыдущим годом.
Оно и понятно, если необходимые для DevOps практики не поставлены, то попытка протолкнуть больше изменений в бой ведет к более частым отказам. Но ”побежали“ все, рассказывать о том, что на рынке останутся только те компании, которые смогут быстро менять свои продукты, уже никому не надо. Практики, которые помогают быстро бегать, остались те же: управление конфигурацией, тестирование, выкатка, процесс утверждения изменений. Перед каждой из этих практик только надо добавить слово ”автоматическая“.
Также отмечается, что успешные компании организованы так, как заповедовал Мелвин Конвей, то есть любая команда может принимать практически любые решения по поводу своего продукта внутри себя, может выкатывать в рабочие часы, и не согласовывать свои выкатки с другими командами. Для этого архитектура ИТ-ландшафта должна быть слабо связанной и это, конечно же, заход на микросервисную архитектуру.
Обязательным также является Trunk Based Deployment (это так они обзывают “фигак, фигак и в продакшен”). На наших глазах идея релизного цикла, пусть даже короткого (1-2 недели), уходит в небытие: сделал, тут же выкатил, собрал фидбек и так непрерывно.
Lean Product Managemnt также является необходимым для успеха в цифровом мире. Выкатывать изменения маленькими кусочками, быстро собирать фидбек от пользователей — все это необходимо, чтобы меняться быстрее, чем конкуренты. И это тоже понятно, в Agile-мире никто не знает, куда бежать, бежать надо во все стороны сразу, в поисках конкурентных преимуществ. И это, по моему мнению, кардинально отличает доцифровой и цифровой миры: в старом мире было понятно, что надо сделать, в новом мире совсем непонятно, и именно поэтому приходится становиться максимально гибким, как технологически, так и с точки зрения бизнеса. Впрочем, я всегда был в этом убежден, а цифры отчета только подтверждают мои догадки.
А как обстоят дела с DevOps в вашей организации?