Кто такой девопс и что он делает

Кто такой девопс и что он делает

Это как системный администратор и программист в одном лице.

Как обычно пишут программы

Традиционный цикл разработки программ выглядит так:

  1. Программисты пишут код небольшими порциями.
  2. Когда очередная версия программы готова, она отдаётся в отдел тестирования.
  3. Тестировщики пишут тесты и ищут ошибки в коде. Если нашли — отдают программистам, и всё начинается с первого пункта.
  4. Если ошибок нет, код отправляется на сборку, чтобы включить его в новую версию программы.
  5. После добавления этого кода в новую версию код снова тестируют — всё ли нормально, дружит ли новый код со старым и нет ли каких конфликтов. Если есть — код отдаётся обратно программистам.
  6. Если всё в порядке, код идёт в бой, например, выкатывается на сайт.

Кажется, что всё так и должно быть. Но в крупных компаниях с большими проектами у такого подхода появляется много минусов.

Минусы поэтапной разработки

Всё дело в том, что с таким подходом есть чёткое разделение зон ответственности. Допустим, у нас простая разработка, которая разделена по отделам так:

  • есть программисты, которые пишут код;
  • дизайнеры, которые натягивают дизайн на этот код;
  • тестировщики;
  • и отдел выпуска финальных релизов.

Проблема в том, что у каждого из этих отделов своё рабочее окружение: они сами следят за своими библиотеками, фреймворками и операционной системой. Из-за этого то, что работает у одних, может не работать у других.

В итоге все тратят время на синхронизацию требований к коду, компонентам, фреймворкам и библиотекам. Работа стоит, код не пишется.

DevOps-подход к разработке

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

  • если что-то можно автоматизировать — автоматизируем;
  • каждый отдел использует один и тот же софт и настройку;
  • финальный код должен как можно быстрее доходить до того, кто пользуется этим софтом;
  • единая среда для разработки, тестирования и финального выпуска.

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

Кто такие девопсы и что они делают

Чтобы всё это работало на практике, появились девопс-инженеры, или просто девопсы. Основная задача такого специалиста — настройка и поддержание в рабочем состоянии нужного софта в компании, а также автоматизация каждого этапа разработки.

Вот что может делать девопс-инженер:

  • настраивать серверы и автоматически управлять их конфигурациями;
  • создавать и настраивать виртуальные контейнеры для быстрого запуска нужного софта. Чаще всего для этого используют Docker;
  • управлять этими контейнерами из одного места и автоматизировать всю их работу;
  • настроить автоматическое тестирование кода;
  • сделать так, чтобы код после тестов автоматически попадал в готовую сборку;
  • собирать данные для мониторинга работы всей системы. Если какой-то сервис или процесс сломается, девопс сразу должен это увидеть и отреагировать.

👉 Главная задача девопса — сделать так, чтобы автоматизации было как можно больше и чтобы она действительно ускоряла разработку.

Что нужно уметь

Чтобы стать девопсом, нужно освоить много разного:

  • принципы и теорию разработки ПО;
  • инструменты автоматизации работы с кодом — Git, Jenkins;
  • системное администрирование на уровне мидла или выше;
  • виртуальные контейнеры и работу с ними — Docker и Kubernetes;
  • базы данных — реляционные и нереляционные;
  • веб-серверы;
  • Python или другой язык для написания рабочих скриптов;
  • системы управления конфигурацией серверов — Ansible;
  • сбор данных по нагрузке и ошибкам во всех системах.

Если при этом девопс будет знать хотя бы на уровне джуниора выбранный язык программирования в компании — будет вообще идеально. Так он сможет учесть особенности языка и подобрать под него нужные инструменты.

Деньги

По данным Хабр Карьеры, в первом полугодии 2021 года средняя зарплата девопс-инженера — 171 тысяча в месяц. Джуниоры получают в среднем 82 тысячи, а сеньоры — 230 тысяч.

Кто такой девопс и что он делает

Что дальше

Скоро поговорим о докере и системах управления виртуальными контейнерами. Они здорово экономят время при разработке и позволяют быстро решать разные задачи. Например, с ними можно развернуть и полностью настроить кастомный вордпресс и все нужные сервисы всего за 4 минуты.

Текст:

Михаил Полянин

Редактура:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Мария Дронова

Соцсети:

Олег Вешкурцев

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
NFT — новые модные токены. Зачем они нужны и не развод ли это?
NFT — новые модные токены. Зачем они нужны и не развод ли это?

Объясняем на Аллегровой.

easy
Гид: что изучать, чтобы получить ИТ-профессию

Планы на будущий год.

easy
JavaScript для новичков: чем опасны нестрогие типы данных
JavaScript для новичков: чем опасны нестрогие типы данных

В JavaScript есть удобная штука, которая может сильно вам навредить.

medium
Карьерный путь: руководитель группы в лаборатории ИИ Сбера
Карьерный путь: руководитель группы в лаборатории ИИ Сбера

Разговор с Алексеем Васильевым: управление проектами, учёба в ШАД и разработка систем ИИ.

easy
Что такое рекурсия
Что такое рекурсия

Это дом, который построил Джек.

easy
Программисты из SpaceX отвечают на вопросы про разработку
Программисты из SpaceX отвечают на вопросы про разработку

Переводим для вас популярный тред из Reddit.

easy
Лучшие языки программирования для старта в 2020 году

Что выбрать, если хочешь стать программистом в этом году.

easy
Как это работает: вход на сайты через соцсети
Как это работает: вход на сайты через соцсети

Всё дело в единой авторизации.

easy
Как устроен интернет: адреса

Вторая часть рассказа об устройстве интернета. Читайте, пока не заблокировали!

easy
Как на самом деле производят процессоры

Чтобы создать сверхмощный процессор, достаточно простого...

easy
Собираем сайт-портфолио для фотографа

Используем CSS Grid.

easy
Биотех-стартапы: что они делают и что в них интересного
Биотех-стартапы: что они делают и что в них интересного

Краткий конспект подкаста

easy
10 главных конструкций языка Go
10 главных конструкций языка Go

На самом деле 12, но 10 — красиво.

easy
easy