DevOps as a Service: как устроена современная разработка

Методология DevOps позволяет компаниям-разработчикам автоматизировать подготовку инфраструктуры, тестирование, развертывание, мониторинг и эксплуатацию своих продуктов. Однако препятствием для внедрения DevOps становится поиск квалифицированных специалистов. В этой статье разберемся, что делать, если нанять в штат DevOps-инженера невозможно.

DevOps as a Service: как устроена современная разработка

Используйте навигацию, если не хотите читать текст полностью:

С чего все началось

«Классический» метод разработки ПО предполагает, что каждая команда работает только в рамках своего процесса: разработчики пишут код и после их локальной проверки подключается команда тестировщиков, а команда эксплуатации присоединяется лишь на финальных этапах.

Суть подхода DevOps в том, что процессы разработки становятся одним циклом. Собственно, название DevOps образовано от сочетания слов development и operations. Особое внимание здесь уделено коммуникациям между командами во время всего процесса работы над продуктом, что позволяет вывести программное решение в релиз быстрее и с меньшими усилиями.

Вместе с тем развитие идеи непрерывной разработки приводит к повышению качества продукта, а также скорости выявления и устранения проблем. Как итог — внедрение DevOps-практик помогает снизить временные и материальные затраты компании, а также сделать процессы более гибкими.

Кто такой DevOps-инженер

Это специалист, отвечающий за автоматизацию и оптимизацию процессов разработки и эксплуатации программного обеспечения, а также обслуживание IT-инфраструктуры организации. Помимо этого, его обязанности часто включают в себя развертывание и управление приложениями, серверами, сетями и прочими системами.

Все круто, но есть нюанс

Как вы могли догадаться, надобности во внедрении такого подхода повсеместно нет. Применение методологии DevOps оправдано только в тех случаях, когда программные решения так или иначе приносят доход. Помимо разработчиков ПО сюда можно отнести сервисы доставки, стриминговые площадки, онлайн-магазины и т. д. Иными словами, в применении метода заинтересованы те организации, которые понесут убытки или потеряют клиентов при наличии сбоев в программном продукте.

Однако собирать свою команду с нуля — не всегда быстрая и выгодная задача. Бывает, когда не получается уложиться в сроки ввиду высокой нагрузки команды или нехватки в ней определенных компетенций. В таких случаях можно воспользоваться DevOps as a Service.

Что такое DevOps as a Service

DevOps as a Service — это модель предоставления услуг, которая позволяет компании делегировать поддержку DevOps-практик и инфраструктуры соответствующим поставщикам услуг.

Проще говоря, в рамках сервиса специалисты поставщика внедряют и поддерживают DevOps-подходы в компании заказчика: создают комфортную среду разработки для приложений, продумывают их архитектуру, настраивают CI/CD-процессы.

Рассмотрим, какие задачи решает DevOps as a Service.

  • Наверстать недостающие компетенции. Чтобы не нанимать редких специалистов в штат, заказчик передает решение задач на аутсорсинг — как правило, так будет дешевле и быстрее.
  • Дополнить команду новыми силами. Поставщик услуги подхватит задачи, которые давно откладывались, и разгрузит команду заказчика.
  • Уложиться в сроки и помочь продукту выйти на рынок как можно раньше (сократить time-to-market).

На каждом этапе — своя команда

Мы в Selectel уже более 12 лет помогаем клиентам внедрять лучшие DevOps-практики и имеем большой опыт в этой сфере. На примере соответствующей услуги DevOps as a Service пробежимся по основным задачам и командам, которые работают с ними.

Реализация

DevOps as a Service: как устроена современная разработка

Команда реализации продумывает архитектуру новых проектов и переносит их на IT-инфраструктуру провайдера. А еще они настраивают CI/CD-процессы и осуществляют подключение к системе мониторинга.

В команду реализации входят:

  • DevOps-инженеры,
  • менеджер проекта,
  • технический лид.

Сопровождение

DevOps as a Service: как устроена современная разработка

После переноса проекта на инфраструктуру Selectel его забирает команда сопровождения. Она реагирует на возникающие события от системы мониторинга и поддерживает проект 24/7 по SLA.

В команду сопровождения входят:

  • SRE-инженеры,
  • менеджер проекта,
  • технический лид.

Безопасность

DevOps as a Service: как устроена современная разработка

Команда администрирования средств защиты экспертна в настройке межсетевых экранов, установке и настройке средств защиты информации, что позволяет значительно повысить уровень безопасности на клиентских проектах.

В команду администрирования средств защиты входят:

  • DevSecOps-инженеры,
  • технический лид.

Архитектура

DevOps as a Service: как устроена современная разработка

Архитектор выполняет кроссфункциональную роль и приходит туда, где в нем нуждаются. Он дает рекомендации по оптимизации клиентских проектов, а также по использованию технологического стека. Постоянно занимается изучением новых технологий и обменом опыта, чтобы всегда быть в курсе актуальных проблем и решений.

Выводы

На наш взгляд, передача DevOps на аутсорс — это хорошее решение, когда заказчику не хватает собственных ресурсов или необходимо ускорить выход продукта.

Что вы думаете насчет модели DevOps as a Service? Приходилось ли сталкиваться с ней? Поделитесь своим мнением и опытом в комментариях!

77
Начать дискуссию