В последние годы в России наблюдается значительный рост интереса к инструментальным платформам, которые упрощают процесс разработки программного обеспечения. Об этом говорят данные отчёта State of DevOps Russia 2024 от компании «Экспресс 42». Ранее мы уже делились результатами этого исследования на темы ИТ-инфраструктуры российских компаний и оркестраторов. А сегодня расскажем о состоянии инструментальных платформ в русском DevOps.
В статье мы проанализируем изменения в наличии платформ в компаниях, их функциональность и ценность для бизнеса. Ещё уделим внимание трудностям, с которыми сталкиваются команды при их использовании и развитии. Отметим, что последний раз вопросы о платформах были в исследовании 2020 года, поэтому актуальные данные сравниваются с показателями четырёхлетней давности.
Наличие платформ в компаниях
Из отчёта видно, что количество компаний, использующих единую инструментальную платформу, существенно увеличилось с 2020 года — с 20 до 26,2%:
Основной драйвер роста — это осознание бизнесами важности автоматизации и оптимизации процессов разработки. Иван Калуцкий, директор инфраструктуры в «Авито», подчёркивает: «Платформизация — это большой тренд, но не новый. Во всех больших облаках пользователь получает прозрачный опыт в любой части единой экосистемы, будь то CI/CD или S3 Storage».
При этом на фоне роста количества компаний с едиными платформами увеличивается и количество респондентов, у которых нет платформ в организации. Этот показатель вырос с 2020 года с 27 до 36,2%. Но здесь рано говорить о какой-либо тенденции. В статье про ИТ-инфраструктуру мы отмечали, что DevOps всё больше интересуются вне ИТ-компаний и финтеха. Поэтому тут возможна ситуация, когда новые компании ещё не успели задуматься о собственных платформах или разработать их.
Также анализ данных показывает, что с увеличением размера компании уменьшается доля респондентов, которые выбрали ответ «У нас нет платформ»:
Так, у компаний с количеством сотрудников до 499 человек в половине случаев нет платформ. При этом с ростом штата компании эта доля последовательно снижается. Если в организациях численностью от 500 до 1999 человек своих платформ нет в 36,7% случаев, то для бизнеса со штатом больше 10 000 сотрудников доля составляет всего 11,7%. Это связано с тем, что крупные организации чаще стремятся к стандартизации подходов.
В то же время среди крупных компаний наблюдается рост доли «нескольких взаимодополняющих платформ». Это может быть вызвано необходимостью разработки отдельных платформ для различных команд и отделов.
С процентом компаний, имеющих платформы, всё понятно. А как обстоят дела с разработчиками в этих компаниях? Сколько из них используют в работе платформы? Отчёт показывает, что более 61% разработчиков в большинстве компаний активно используют платформы, что является значительным увеличением по сравнению с 2020 годом, когда этот показатель составлял 13%. Это может быть связано с улучшением качества предоставляемых услуг:
Ценность и польза использования платформы
Далее у респондентов спросили, в чём они видят ценность внутренней инфраструктурной платформы. В результате получилось такое распределение:
Лидируют следующие ценности:
сокращение Time to Market — 52,4%;
сокращение затрат на поддержку различных технологических решений — 49%;
сокращение затрат на владение инфраструктурой — 44,2%.
Эти показатели подчёркивают важность платформ для повышения эффективности разработки и снижения затрат. Также большинство респондентов отметили, что внедрение платформ позволило им сфокусироваться на более важной и сложной работе, освобождая от рутинных задач, таких как развёртывание и настройка инфраструктуры.
А по данным исследования 2024 State of DevOps Report от компании Puppet (разработка решений для автоматизации управления ИТ-инфраструктурой) повышенная производительность является главным преимуществом наличия платформы в компании (58%):
Также среди лидирующих преимуществ:
автоматизация и стандартизация процессов — 51%;
сокращение время доставки — 50%;
повышение безопасности — 49%.
Помимо ценности платформ, важна и их функциональность. Современные инструментальные платформы обладают разными функциями, включающим автоматизацию развёртывания, управление конфигурациями, мониторинг и оркестрацию. Так распределились места среди самых важных из них:
Часто встречаемая функциональность платформ включает:
мониторинг — 60,2%;
управление инфраструктурными ресурсами — 59,6%;
логирование — 54,4%.
Реже всего встречаются сервисы по проверке на соответствие требованиям регуляторов и информационной безопасности, а также трейсинг и сервисы очередей.
Трудности при работе с платформами
Авторы исследования отмечают, что «разработка инструментальной платформы — это затратный и сложный проект, но большинство компаний всё равно инвестируют в него». Многие компании сталкиваются со сложностями при разработке платформы. Вот основные из них:
Большинство респондентов (41,3%) отметили сложности в разработке единого подхода к предоставляемым услугам. Также многих беспокоит недостаток технических навыков, времени и ресурсов.
Кстати, по данным отчёта от Puppet среди самых важных навыков для разработки платформы респонденты отмечают:
знания в области системной интеграции — 88%;
умение автоматизировать процессы — 85%;
знание методологии CI/CD — 82%.
Но с трудностями встречаются не только во время развития платформы, но и при её использовании:
Основными сложностями, с которыми сталкиваются команды при использовании платформ, стали:
недостаток документации и примеров использования — 36,7%;
недостаток функционала платформы — 32,2%;
отсутствие обучения и тренингов — 32,2%.
Эти факторы могут значительно затруднять эффективное использование платформ и снижать их ценность для команд. Поэтому важно обеспечить своевременное обучение и поддержку для пользователей платформы, чтобы минимизировать влияние этих трудностей на производительность.
Разработчики платформы
Авторы исследования также спросили, кто в компаниях участвует в разработке внутренней платформы. Результаты получились следующими:
В итоге в большинстве случаев в разработке платформы обязательно принимает участие — кто бы мог подумать — разработчик (69%). Ему немного уступает DevOps-специалист с 63,3%. Примерно в каждой третьей платформенной команде можно встретить QA-инженера / тестировщика, Product Owner, Project Manager, SRE или аналитика. Реже всего в этом принимает участие Developer Advocate.
В дополнение к этому можно отметить, что по данным исследования от Puppet команды разработки платформ чаще всего (23%) являются автономными командами в инженерной части структуры компании:
При этом почти так же часто команды разработки платформы входят в состав операционной структуры (22%) или являются частью других инженерных команд (21%).
Ещё в том же исследовании говорится, что к 2026 году около 80% компаний планируют иметь в штате платформенную команду.
Выводы
В результате анализа данных отчёта State of DevOps Russia 2024 можно выделить несколько ключевых моментов:
Количество респондентов, у которых нет платформ в организации, увеличилось с 27 до 36,2% с 2020 года. Это может быть связано с появлением среди респондентов сотрудников новых компаний, интересующихся DevOps, которые, возможно, ещё не успели внедрить платформы.
Крупные организации чаще стремятся к стандартизации подходов. Например, среди таких компаний наблюдается рост доли «нескольких взаимодополняющих платформ». Это может быть вызвано необходимостью разработки платформ для различных команд и отделов.
Основные ценности платформ включают сокращение Time to Market и снижение затрат. Эти показатели подчёркивают важность платформ для повышения эффективности разработки.
41,3% респондентов отметили сложности в разработке единого подхода к предоставляемым услугам. Основные трудности включают недостаток технических навыков и ресурсов. Разработка инструментальной платформы требует значительных затрат и усилий, однако большинство компаний продолжают инвестировать в это направление.
В этой статье мы собрали только часть результатов исследования, которые касаются инструментальных платформ. Скачать подробный отчёт с остальными данными можно на сайте исследования.
P. S.
Читайте также в нашем блоге:
Комментарии (5)
ashkraba
08.10.2024 07:45+1Ой сколько пафоса, а по факту обычно просто делают красивый ui, где любой может накликать все что угодно, а под капотом все те же jenkins, terraform, ansible, grafana... Как говорится на арене все те же. Но зато все вокруг уже platform инженеры. Но это все сугубо моё имхо. На звание истины не претендую.
kozlyuk
Что такое упомянутые "платформы" и чем "инструментальная платформа" отличается от "инфраструктурной платформы для разработчиков"? Чем платформа отличается от связанного набора инструментов, например, GitLab + TeamCity + Harbor + Ansible/скрипты для поддержки процессов?
aleksluov Автор
Здравствуйте!
Платформы помогают разработчикам эффективнее и комфортнее разрабатывать ПО и снимает с них нагрузку по реализации задач, не связанных с разработкой напрямую.
CNCF в своём White Paper о платформах даёт такой вариант: платформа — это интегрированный набор возможностей, сформированный в соответствии с потребностями пользователей. Интеграция типовых функций и сервисов становится единообразной на всех уровнях для множества приложений и сценариев использования. Хорошая платформа также унифицирует взаимодействие пользователя со своими функциями и сервисами, например, веб-порталами, шаблонами проектов, self-service API.
Здесь «инструментальная платформа» и «инфраструктурная платформа для разработчиков» — это одно и то же.
Вопрос о границе между связанным набором инструментов и платформой, кажется, достаточно философский. Ведь по сути платформа и есть набор инструментов, собранный под конкретные задачи. Тоже приведу примеры из White Paper CNCF. С одной стороны речь там идёт о том, что задача платформы — выступать тонким связующим слоем, который обеспечивает согласованность работы инструментов. При этом в качестве примера самой простой «платформы» там приводится обычная вики-страница со ссылками на стандартные рабочие процедуры.
А где для вас проходит эта граница? Когда по вашему мнению набор инструментов становится платформой?
kozlyuk
Определение CNCF звучит максимально неконкретно. Как будто "платформа" — это пафосное название для связки, которую все себе так или иначе создают, не бывает же такого, что каждый инструмент внедрен изолированно.
О таких платформах прочитал впервые. Абстрактно границу провел бы так, что с платформой должны появляться плюшки, которых просто связка систем не дает или они не могут быть так связаны напрямую. Подобно тому, как из LDAP самые разные системы могут прочитать себе параметры.
aleksluov Автор
Согласен, что платформа должна предлагать функции, которые не доступны при простой связке инструментов.