Скидки на курсы ждут в личном кабинете. Нажмите тут

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

Кто такой DevOps-инженер и как им стать
Иван Сотников
часы голубые
15 мин.

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

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

Что такое DevOps

Название профессии произошло от двух английских слов: development — «разработка», operation — «эксплуатация». Это метод работ, который налаживает взаимодействие между разработкой и эксплуатацией. А специалисты, которые пользуются этим методом, называются DevOps-инженерами.

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

Кто такой DevOps-специалист

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

Представьте, что приложение на вашем смартфоне — это автомобиль.

Разработчик создаёт веб-сервис: кузов, двигатель, подвеску.

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

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

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

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

На рынке труда можно встретить профессии системного инженера и билд-инженера. Вот чем они отличаются от DevOps инженера.

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

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

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

Плюсы и минусы профессии

Плюсы

  • Заработная плата. Ниже в статье мы расскажем, сколько в среднем в России получают DevOps-инженеры.
  • Профессия сложная, а потому востребованная. На момент написания статьи на сайте hh.ru работодатели разместили больше 5nbsp;000 вакансий.
  • Возможность работать в любой сфере. DevOps-инженеры много учатся и их знания могут потребоваться не только в IT сфере.
  • Возможность работать за рубежом.

Минусы

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

Что должен знать DevOps-инженер

Посмотрите на периодическую таблицу инструментов DevOps (англ). В ней отмечены навыки, которые должны быть у DevOps-инженера.

Периодическая таблица инструментов DevOps-инженера

Периодическая таблица инструментов DevOps-инженера. Скриншот с сайта digital.ai

Но специалисты не советуют учить всё, а постараться освоить минимум. Ниже поговорим о том, что точно стоит изучить.

Разработка

DevOps-инженеру нужно знать языки Python, Groovy, Bash, Powershell, Ruby, Go. Их не обязательно знать досконально. Достаточно научиться писать скрипты для автоматизации разработки и тестирования.

Операционные системы

DevOps-инженеру нужно знать Linux и его приложение WebServers для развёртывания веб-сервера и уметь писать скрипты bash для работы с командной строкой. В Windows нужно знать Powershell — инструмент для работы с кодом и командной строкой — и IIS — набор серверов.

Облака

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

Профессионалы советуют освоить AWS, GCP, Azure. А ещё выбор сервера зависит от того, в какой стране вы работаете. В России — Amazon, в Европе, США, Израиле — Amazon и Google Cloud, в Китае — Alibaba Cloud. Разберитесь хотя бы в одном.

Системы оркестрации и микросервисы

Давайте снова представим автомобиль. Вы едете на автомобиле, и все его системы работают согласованно вместе. Если выйдет из строя какая-нибудь деталь — это может отразиться на всём автомобиле. Например, если постоянно падает давление в шине, то изнашивается покрышка, могут повредиться диски и подшипники, автомобиль ведет в сторону и может случиться авария.

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

Чтобы микросервисы работали вместе, DevOps-специалист должен знать, как пользоваться Ansible. Этот сервис позволяет одной командой запустить сразу несколько серверов. DevOps-инженер выполняет работу дирижера оркестра, поэтому эти процессы называются оркестрацией. DevOps-инженер «машет палочкой», а приложения как музыканты работают вместе как по нотам, даже если они находятся на разных серверах.

Инструменты для работы

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

  • GitHub, BitBucket, Gitlab — системы управления виртуальными папками с файлами. Эти папки называются репозиториями. Например, рабочий стол компьютера — это репозиторий. Через репозитории управляют версиями ПО и обновлениями. Есть возможность командной работы.
  • Jenkins — для автоматической разработки нового ПО и обновления существующего. Этот инструмент ускоряет работу специалиста.
  • Terraform – это сервис, который предоставляет всё нужное оборудование для проекта в виде кода. Как на кухне нужна плита, мойка, блендер, холодильник, так и для DevOps-проекта нужны хосты, сервера, порты. Всё это инфраструктура, только её нельзя потрогать, потому что она существует в виде кода. Вам достаточно описать, какая инфраструктура вам нужна, а сервис всё сделает автоматически.
  • CloudFormation — управляет инфраструктурой в облачной среде с помощью текстового файла.

Важные личные качества

  • Стрессоустойчивость. Технические системы могут сломаться в любое время и ремонтировать их надо срочно. В такие моменты люди могут испытывать стресс. DevOps-инженер должен научиться спокойно переживать момент, когда «всё пропало».
  • Коммуникабельность. Чтобы договариваться с командой и участвовать в обсуждении рабочих задач.
  • Эмпатия для дружеской атмосферы в команде.
  • Умение фокусировать внимание. Все непростые задачи требуют к себе внимания. Их надо изучать, выдвигать и проверять гипотезы.
  • Управление временем. Сочетание труда и отдыха и ведение записей помогают справляться с рабочей нагрузкой на организм и психику.

Что ещё должен знать и уметь DevOps-инженер

Состоявшиеся DevOps-инженеры советуют входить в профессию, если вы умеете минимально администрировать сервера, IT-инфраструктуру компании. Вот что ещё пригодится.

  • Понимать, как работает железо.
  • Настраивать и устанавливать операционные системы Linux и Windows.
  • Работать с сетями и оборудованием.
  • Знать технический английский, чтобы читать документацию. Большинство документов по инструментам и языкам написано на английском языке.

Заработная плата

Давайте посмотрим на инфографику ниже. Здесь показана средняя зарплата DevOps-специалистов по крупным городам России.

Заработная плата по вакансии DevOps-инженеров в крупных городах федеральных округов

Заработная плата по вакансии DevOps-инженеров в крупных городах федеральных округов. По данным сайта hh.ru, ноябрь 2021

Зарплата у новичка может начинаться с 70 000–90 000 ₽.

Вакансия DevOps-инженера с минимальной зарплатой во Владивостоке

Вакансия DevOps-инженера с минимальной зарплатой во Владивостоке

Максимальная зарплата DevOps-инженера во Владивостоке

Максимальная зарплата DevOps-инженера во Владивостоке

Верхняя планка 300 000–450 000 ₽ зависит от уровня специалиста. Как правило, это люди, которые руководят командой DevOps-инженеров.

Вакансия DevOps-инженера в Москве

Вакансия DevOps-инженера в Москве

Если смотреть по регионам, то самая максимальная зарплата у DevOps-инженера в Новосибирске: до 400 000 ₽.

Заработная плата DevOps-инженера в Новосибирске

Заработная плата DevOps-инженера в Новосибирске

В основном, средняя зарплата по регионам — 276 000 ₽. При этом многие вакансии удалённые, не нужно переезжать. Встречаются вакансии с требованиями без резюме.

Куда можно устроиться

DevOps-специалистов ищут IT-компании. Но не только. Это ещё и компании, которые заняты цифровой трансформацией бизнеса. Банки, почтовые сервисы, интернет-провайдеры, связь, авиакомпании и т. п.

На день написания статьи на сайте hh.ru было 5 943 вакансии DevOps. Например, такие:

Вакансии для DevOps-инженеров в разных компаниях

Перспективы профессии и карьерный рост

DevOps-инженеры владеют широким набором навыков и инструментов, которые всегда нужны в IT-индустрии. Перечислим некоторые.

  • Системное администрирование. С этого советуют начинать путь в профессию. Но всегда можно вернуться обратно.
  • Разработка. Когда постоянно занят написанием скриптов по автоматизации, будет не проблемой устроиться в компанию, где знания нескольких языков приветствуется. И изучить дополнительный язык тоже не будет проблемой.
  • Навыки системного архитектора. Это специалист, который проектирует IT-системы.
  • Аналитика данных. DevOps-инженер сталкивается не только со скриптами, автоматизацией и тестированием. Ему приходится иметь доступ к базам данных. Если к этим знаниям добавить язык Python и команды MySQL, то переход в аналитику данных пройдёт легче.
  • Возможность проводить консультации. Не всем компаниям требуются штатные DevOps-инженеры. Кому-то достаточно дорогой консультации или разового визита. Консультации нужны также практикующим DevOps-инженерам.

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

Как стать DevOps-инженером

Состоявшиеся DevOps-инженеры советуют входить в профессию, если вы умеете минимально администрировать сервера и IT-инфраструктуру компании.

DevOps-инженеры предлагают изучить две книги по профессии:

1. «Проект “Феникс”. Роман о том, как DevOps меняет бизнес к лучшему», Джин Ким, Джордж Спаффорд, Кевин Бер. Художественная книга о повседневной работе инженера. Выше мы писали, что плюсом профессии является не рутинность. Так вот, авторы книги описывают эту работу, где задачи всегда новые, опасные и неизвестные.

2. «Руководство по DevOps. Как добиться гибкости, надёжности и безопасности мирового уровня в технологических компаниях», Джон Ким. Из этой книги вы узнаете, как создать непрерывный поток разработки IT-продуктов. Ведущие IT-специалисты рассказали о принципе потока, принципе обратной связи и принципе непрерывного обучения.

Курсы для DevOps-специалистов

Чтобы получить необходимые знания и навыки с нуля, можно пройти курсы по DevOps. Там вы получите документ, подтверждающий ваши компетенции, оформите резюме и портфолио/кейсы. Многие онлайн-школы помогают с трудоустройством: добавляют учеников в закрытый чат с вакансиями или напрямую рекомендуют успешных студентов на стажировку к компаниям-партнёрам.

Курс
Школа
Стоимость
Рассрочка
Длительность
Рейтинг
Ссылка
124 140 ₽
Есть
16 месяцев
4.6
270 000 ₽
Есть
18 месяцев
4.4
111 600 ₽
Есть
6 месяцев
4.3

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

Оставьте комментарий

Ваш комментарий:
Имя:
Email: