Журнал Mail.ru Cloud Solutions
об IT-бизнесе, технологиях и цифровой трансформации

Чем на самом деле занимается DevOps-инженер и зачем вам его нанимать Mail.ru Cloud Solutions
Mail.ru Cloud Solutions
  • 02 сентября
  • Бизнес

Чем на самом деле занимается DevOps-инженер и зачем вам его нанимать

Автор: Ольга Мокшина
Популярное

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

Павел Селиванов, ведущий DevOps-инженер Mail.ru Cloud Solutions, рассказал, что делает такой инженер, какие у него задачи и что необходимо для эффективного использования DevOps.

Зачем компаниям методология DevOps

DevOps culture — это методология, которая помогает автоматизировать все этапы создания программного обеспечения: от разработки, сборки и тестирования до развертывания, выпуска и доставки пользователям. За счет этого команда работает эффективнее и выпускает на рынок более качественные цифровые продукты, например, приложения для клиентов.

Суть методологии DevOps в одной схеме

Внедрение методологии влияет не только на работу программистов, но и на состояние бизнеса в целом. Например, DevOps помогает компаниям повышать удовлетворенность клиентов цифровыми услугами и выпускать продукты на рынок быстрее конкурентов.

Акцент на стратегических задачах. С помощью DevOps автоматизируют многие рутинные операции вроде тестирования и выкатки продукта в прод. В итоге команда разработки тратит меньше времени на рутину и может сфокусироваться на стратегических задачах.

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

Такая платформа уже готова к работе, достаточно ее настроить под нужды компании. Таким образом, применяя различные PaaS, можно собрать решение под свои задачи.

Используя PaaS, вы получаете доступ к последним технологическим решениям за счет экспертизы провайдера. Чтобы внедрить сложный инструмент на локальных серверах, требуется привлечение внешних консультантов, покупка железа, настройка и отладка. В облаке ничего не нужно строить с нуля, достаточно настроить инструмент под свой проект.

Попробовать решения PaaS можно на платформе Mail.ru Cloud Solutions. Здесь есть инструменты, которые применяют компании, практикующие DevOps.

Быстрый выпуск продуктов на рынок. За счет автоматизации рутинных операций компании выводят на рынок новые продукты и обновления раньше конкурентов. Например, согласно отчету DORA о состоянии DevOps в 2019 году, командам с низким уровнем внедрения DevOps на переход от тестовой версии до выкатки ПО в прод требуется от месяца до полугода, с высоким — от одного дня до недели.

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

Команды 
с лучшими 
результатами
Команды
с хорошими результатами
Команды
со средними результатами
Команды
с низкими результата-ми
Частота провалов — количество релизов и обновлений, которые ухудшают обслужива
ние клиентов
0-15%0-15%0-15%46-60%
Время восстанов-ления после инцидента или бага, влияющего на пользова-телейМенее одного часаМаксимум деньДо одной неделиОт недели
до месяца

Чем занимается DevOps-инженер

Как правило, организации, которые внедряют методологию, нанимают DevOps-инженера. Этот специалист занимается автоматизацией на всех этапах: от разработки, сборки и тестирования до развертывания, выпуска и доставки продукта пользователям.

Среди обязанностей DevOps — налаживание взаимодействий между разработчиками, системными администраторами, тестировщиками и менеджерами. Он выступает своего рода евангелистом для команды разработки: рассказывает, как правильно выстроить процессы, какие DevOps-практики и инструменты использовать.

DevOps — одна из самых дефицитных и высокооплачиваемых IT-специальностей. По данным Хабр Карьеры за второе полугодие 2019 года, в среднем DevOps-инженерам ежемесячно платят 120 тысяч рублей. Но специалистов, особенно высококвалифицированных, на всех не хватает — поэтому некоторые компании предлагают соискателям зарплату в 200-250 тысяч рублей. И это без учета налогов, страховых взносов и соцпакета.

Найм специалиста: что нужно знать DevOps-инженеру

Поскольку DevOps-инженер отвечает за автоматизацию процессов на всех этапах разработки, он должен понимать, как устроен процесс разработки, а также владеть навыками и инструментами DevOps.

Понимание процессов. DevOps-инженер должен знать, как устроен весь процесс: от построения архитектуры до доставки приложения пользователям. Чем занимаются разные участники команды, какие у них цели и задачи.

Языки программирования. Для автоматизации разработки DevOps-инженеру приходится писать скрипты и программы — необходимо знание одного или нескольких языков программирования. Язык может быть любым, но сейчас в среде DevOps наиболее распространены Python, Go и Bash.

Операционные системы. DevOps-инженер должен разбираться в средах для развертывания приложений и запуска кода. Как правило, он базово знаком со всеми ОС и глубоко разбирается в Windows или Linux.

Непрерывная интеграция и доставка (CI/CD). CI/CD — методология, которая позволяет автоматизировать интеграцию кода в репозитории, сборку, тестирование и запуск приложений в продакшн. Если интеграция непрерывна, то каждый раз при добавлении нового кода запускается автоматическое тестирование. В итоге приложение работает стабильнее.

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

Управление версиями. Это методика работы с кодом в версиях, которая позволяет отслеживать исправления и истории изменений для упрощения анализа и восстановления кода. Самая популярная система управления версиями на сегодня — Git.

Системы оркестрации и микросервисы. Для доставки и развертывания современных приложений используют контейнеры и микросервисы. Технология позволяет разбить приложение на много маленьких частей, разрабатывать и обновлять их независимо друг от друга. Для управления контейнерами используют системы оркестрации. Одна из популярных сегодня — Kubernetes.

«Минимальный опыт работы DevOps-инженера, претендующего на middle-позицию, — три-пять лет. Переход с позиции middle на senior занимает от года, но все зависит от конкретного человека — насколько он готов развиваться.

Инженеры с большим опытом становятся архитекторами решений. Такой специалист не только выстраивает в компании процесс непрерывной разработки, но и проектирует системы с учетом бизнес-задач. Часто он же отвечает и за RnD — разработку технологической стратегии развития компании».

Павел Селиванов, ведущий DevOps-инженер, Mail.ru Cloud Solutions

Что стоит знать о DevOps-инженерах:

  1. Чем занимается DevOps-инженер: он внедряет в компании методологию DevOps и автоматизирует процесс разработки.
  2. Компании, внедрившие методологию DevOps, быстрее выводят на рынок новые продукты, сокращают затраты и повышают лояльность клиентов.
  3. У специалистов по DevOps одни из самых высоких зарплат в отрасли. В России в среднем платят 120 тысяч в месяц, в некоторых компаниях — 200-300 тысяч рублей. Суммы без учета налогов, страховых взносов и соцпакета.
  4. DevOps-разработчик должен понимать процессы, знать язык программирования, разбираться в ОС, облачных технологиях, системах оркестрации, CI/CD и уметь работать с системой контроля версий.
Ссылка скопирована!

Что еще почитать про ИТ-бизнес