В последние годы термин »DevOps» стал неотъемлемой частью лексикона айтишников. Однако, несмотря на его популярность, многие все еще задаются вопросом: кому же на самом деле нужен DevOps? В этой статье мы разберем кому он нужен и зачем, на основе нашего опыта предоставления DevOps как услуги в rubicom.tech.
Что такое DevOps
Давайте для начала разберемся, что такое DevOps? Говоря простым языком, это набор практик и подходов, которые позволяют вывести типичное администрирование ИТ-инфраструктуры на новый уровень автоматизации, централизации, прозрачности и масштабирования.
DevOps-инженеры нужны тогда, когда возможностей системных администраторов недостаточно из-за специфики проектов, над которыми нужно работать. В компании может быть очень много серверов и ИТ-сервисов или может непрерывно идти цикл разработки и запуска нового функционала ПО, причем командами из тысяч программистов. И все это под высокой нагрузкой на инфраструктуру и критичность сервисов для работы бизнеса. Ввиду разных потребностей бизнесу часто нужно автоматизировать процессы эксплуатации инфраструктуры и контроля ее здоровья.
В таких ситуациях нужен DevOps. Он будет смотреть на весь жизненный цикл корпоративного ПО целиком, интегрируя полезные инструменты, которые упростят рутину администрирования, выпуска новых версий ПО, решение типовых проблем. Хороший девопс не только сделает работу программистов, сисадминов и тестировщиков эффективнее и быстрее, но и выступит аналитиком на стыке бизнеса и технологий. Снизит время выпуска новых продуктов (time to market), повысит скорость решения и снизит частоту глобальных технических проблем, сократит бюджет на обслуживание ИТ-инфраструктуры за счет автоматизации, централизации и специфики роли DevOps — тесной связи с другими отделами компании на всем цикле.
Теперь рассмотрим, каким компаниям подойдет DevOps.
Стартапы
DevOps предоставляет возможность ускорить процесс разработки и развертывания. Автоматизация этих процессов позволяет командам сосредоточиться на создании функционала, а не на рутинных задачах. Кроме того, использование облачных технологий и контейнеризации помогает стартапам эффективно управлять ресурсами и масштабироваться по мере роста.
Рассмотрим на примере небольшой студии по разработке игр для мобильных устройств с командой из 6 человек. До внедрения DevOps ребята администрировали инфраструктуру с помощью единственного системного администратора средней квалификации на полставки, а также иногда подступаясь к интеграции новых инструментов для оптимизации процессов и безопасности самостоятельно. При такой конфигурации приходилось вручную выгружать новый код на сервер, проводить тесты по списку работоспособности по списку самостоятельно, тратя на каждое обновление по несколько часов и порой получая непредсказуемый результат ввиду очень низкой стандартизации этих процессов. Были проблемы и с мониторингом, и с резервным копированием. Формально все оно было в порядке, но при более глубоком рассмотрении выяснилось, что многие вещи вовсе не работали так, как от них ожидалось в критической ситуации.
Привлечение штатного DevOps-инженера выходило за рамки бюджета компании, поэтому они обратились к аутсорсингу, получив органиченную по времени, но комплексную экспертизу инфраструктуры и связанных с ней процессов по цене менее чем в 50 000р. Совместно с DevOps-консультантом за 3 месяца были автоматизированы практически все рутинные операции, включая тестирование при релизе и контроль здоровья резервных копий, а инфраструктура компании была реорганизована так, что вовсе перестала нуждаться в постоянном администрировании, что сократило расходы на нее более чем на 80тр в месяц.
Малый и средний бизнес
Часто сталкиваются c необходимостью оптимизации процессов. Внедрение DevOps позволяет уменьшить время на разработку и повысить качество продуктов. Использование CI/CD (непрерывная интеграция и непрерывное развертывание) позволяет минимизировать ошибки и ускорить выход новых функций, в результате снижается ИТ-бюджет.
Например, для сервиса по доставке продуктов из Петербурга комплексное внедрение DevOps-практик позволило сократить ИТ-бюджет на 40% или 350 000р в месяц, и это с учетом того, что у DevOps-инженера тоже немаленькая зарплата. Такого эффекта удалось добиться за счет очень продуманной стандартизации, минимализма в подходе к инфраструктуре и процессам, переформатированию ИТ-команды, чтобы она действительно стала одним целым, чего нельзя было сказать о компании до этого. Вместо устаревшего сайта, неудобной обработки заказов и трекинга доставки было сложно привлекать и удерживать клиентов. В результате трансформации компания стала уверенно догонять конкурентов и вылечила свои исторические болезни.
Крупные компании
Для гигантов, имеющих сложные и разветвленные системы, DevOps является ключом к повышению гибкости и скорости реагирования на изменения рынка. DevOps помогает устранить разрывы процессов, коммуникаций и целей между командами разработки и эксплуатации, улучшая их кооперацию, особенно в случае распределенных команд. Это, в свою очередь, способствует более быстрой доставке обновлений и улучшений.
Для известного российского банка DevOps стал островом стабильности и окном в полноценную аналитику в разрозненном «зоопарка» технологий, команд сотрудников, непрерывно сменяющей друг друга документации и стандартов. Технический менеджмент компании признает, что без команды DevOps и SRE они не смогли бы бы сохранять конкурентный уровень. Про деньги говорить сложно, прямые и косвенные выгоды измеряются десятками, если не сотнями миллионов рублей в месяц, но это даже не основная выгода. Работа ИТ в целом в компании становится более предсказуемой и качественной, а это главное. Банк активно увеличивает команду DevOps, выделяя такой подход как один из столпов цифровой трансформации.
ИТ-компании
Внедрение DevOps в ИТ-компаниях помогает оптимизировать процессы разработки и повысить качество программного обеспечения. Автоматизация тестирования и развертывания снижает риск ошибок и позволяет командам быстрее реагировать на отзывы пользователей. Это особенно важно для компаний, работающих в условиях быстро меняющегося рынка.
Для большинства относительно крупных или прогрессивных ИТ-компаний DevOps — это уже уже обязательная данность. На первый план выходит уже не принятие решения о привлечении DevOps-инженеров, а наличие в компании возможностей собрать качественную команду. Например, Анна из HR-отдела московской компании-разработчика цифровых сервисов для мобильных операторов не только обрабатывает отклики на вакансии, но и активно ищет специалистов через более чем 10 каналов и сеть своих контактов по всей стране. Иногда на закрытие одной вакансии нужно по 20-30 собеседований, а уровень зарплатных ожиданий сотрудников удивляет даже старожилов технического менеджмента компании. И при все этом инициатив сократить найм DevOps-инженеров Анна не припомнит.
Организации, работающие с облачными технологиями
С переходом на облачную инфраструктуру DevOps становится особенно актуальным. Автоматизация процессов развертывания и управления инфраструктурой в облаке позволяет компаниям более эффективно использовать ресурсы, управлять затратами и обеспечивать высокую доступность своих сервисов.
Команды, стремящиеся к инновациям
Поскольку DevOps поощряет экспериментирование и внедрение новых подходов, команды могут быстрее тестировать и реализовывать инновационные идеи. Это особенно важно в условиях высокой конкуренции.
DevOps — это не просто набор инструментов или методологий, а культурный подход, который способствует улучшению взаимодействия между командами разработки и эксплуатации. Независимо от размера компании или области ее деятельности, внедрение DevOps может привести к значительным улучшениям в качестве ПО, скорости его развертывания и удовлетворенности клиентов.
Если вы еще не задумывались о внедрении DevOps в свою организацию, возможно, пришло время сделать этот шаг. Если нужна помощь, мы в компании РубикомТех предлагаем готовые решения для эксплуатации с бесплатным тестированием и финансовой гарантией качества.
Неочевидные сферы применения
В последние годы DevOps стал неотъемлемой частью IT-индустрии, но его возможности выходят далеко за рамки разработки программного обеспечения. DevOps активно используется в разных секторах от медицины до космоса, от управления инфраструктурой до применения принципов автоматизации в бизнес-процессах.
А какой у вас опыт внедрения DevOps в вашей компании?