DevOps-инженер - как обучиться профессии и сколько можно зарабатывать

Мария Рухлова
Автор-эксперт проекта «Edu UP»

Выбор профессии Программирование
Обновлено: 8 октября 2022


Чтобы понять, что представляет собой профессия DevOps-инженера, сначала придется разобраться в термине “девопс” и его ключевом значении для сферы информационных технологий. А для этого следует объективно взглянуть на область разработки в целом и выяснить, чем была вызвана необходимость появления и распространения нового направления в IT-сфере и последующего формирования на его основе отдельной специальности.

DevOps-инженер - как обучиться профессии и сколько можно зарабатывать

*Показатели профессии по расчетам автора материала
период обучения: от 6 месяцев
среднемесячный доход: 1140-80000 долларов
востребованность на рынке: Высокая
уровень сложности обучения: Тяжелый

DevOps: понятие и суть культуры

Development Operations, или сокращенно DevOps, - вовсе не название профессии. Это особая методика, а правильнее сказать, культура, возникшая в далеком 2008 году. Она была призвана решить насущные проблемы в сфере разработки, с чем успешно справилась. Большинство IT-компаний источник всех неурядиц видели в несовершенстве процессов взаимодействия между командами программистов, сисадминов и тестировщиков. И в этом они были правы, ведь ситуация выглядела примерно так:

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

  • если же проблемы возникали, то тестировщики заявляли: “все дело в коде, пусть разработчики сами разбираются”;

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

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

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

Какое-то время такая схема действовала. Ведь программы писали в основном для офлайн-использования после установки на ПК. ПО обновлялись редко, поэтому торопиться было некуда. Но когда мир начал активно переходить на онлайн-сервисы, все изменилось. Рынок стал требовать частого и быстрого выпуска обновлений, причем желательно регулярного и непрерывного. В противном случае ПО рисковало остаться невостребованным среди пользователей, чего нельзя было допустить.

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

Особенности работы DevOps-инженера

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

  • обеспечение коммуникативного и технического взаимодействия между членами команды;

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

  • автоматизация процессов, относящихся к категории создания и последующей эксплуатации (тестирования);

  • курирование всех стадий создания и развертки разрабатываемого продукта;

  • контроль скорости исполнения задач и ее соответствия графику;

  • откат внесенных изменений при условии возникновения проблем с выпущенным обновлением.

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

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

Специализации DevOps-инженера

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

  • Build Engineer. Он отвечает за сборку кода. Разбор конфликтов, притягивание зависимостей - все это функции “инженера-строителя” мира DevOps.

  • Release Engineer (дословно с англ. - инженер по выпуску). В его обязанности входит доставка кода в продакшн. Он определяет, какой билд отправится в промышленную среду, а какая ветка “поедет” на тестирование.

  • Automation Engineer (с англ. - инженер по автоматизации). В его задачи входит автоматизация всего, что можно автоматизировать. Прогон тестов, автосборка при пуше в гит, деплой в продакшн и на staging - все это функционал Automation Engineer.

  • Security Engineer (инженер по безопасности). Он отвечает за изучение уязвимостей в применяемых компонентах и прогон тестов по безопасности.

На практике такие узкоспециализированные роли обычно отводятся специалисту более широкого профиля. Например, обязанности Build Engineer может исполнять разработчик, а функции Automation Engineer - сисадмин.

Знания, навыки, личные качества

Вне зависимости от места работы и специализации каждый DevOps-инженер должен:

  • Знать Python и уметь на нем программировать. Это необходимо для понимания специфики деятельности разработчиков и написания программ для автоматизации.

  • Работать с GitLab, уметь разрешать внутренние конфликты, создавать пространство для совместной работы, настраивать CI/CD, которые позволяют непрерывно изменять (корректировать) код и оперативно запускать приложения.

  • Уметь пользоваться программным обеспечением Docker, предназначенным для автоматизации развертывания, создавать и настраивать инфраструктуру разработки.

  • Иметь навык работы с различными инструментами для автоматизации процессов тестирования.

  • Уметь пользоваться средствами Zabbix (или аналогами), помогающими мониторить статусы серверов, сервисов и сетевого оборудования.

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

Помимо профессиональных навыков и знаний, девопс-инженеру понадобится приличный набор прокачанных soft skills и полезных в работе личностных качеств:

  • аналитический склад ума;

  • умение и желание автоматизировать процессы, организовывать командную деятельность;

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

  • коммуникабельность, гибкость;

  • обучаемость (девопс-инженеру нужно уметь все “схватывать на лету”);

  • целеустремленность, усидчивость, терпимость, стрессоустойчивость;

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

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

Где учиться на DevOps-инженера и сколько это стоит

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

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

  • информационной безопасностью;

  • программной инженерией;

  • бизнес-информатикой;

  • прикладной математикой.

В технических и многопрофильных ВУЗах есть и программы, ориентированные конкретно на подготовку будущих девопс-специалистов. Таковым является, например, профиль «Математическое обеспечение и администрирование информационных систем» и «DevOps-инженерия в администрировании инфраструктуры ИТ-разработки».

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

Для тех, кто не имеет высшего технического образования, связанного с программированием, информатикой или математикой, но хочет освоить профессию девопс-инженера, есть курсы. Длятся они в среднем около 6-7 месяцев. Не совсем понятно, как можно научить новичка за такой короткий срок и программированию, и администрированию (и еще очень много чему), но на сайтах образовательных центров обещают не только обучить, но еще и трудоустроить. Есть и те, кто предлагает куда более длительные курсы, достигающие 24 месяцев. В эффективность такого обучения как-то верится больше.

Почти в каждом образовательном центре делается акцент на то, что учиться можно, не отрываясь от работы. То есть, не изо дня в день, как в ВУЗе, а по 4-5 часов 2-3 раза в неделю и в большинстве случаев всего 5-6 месяцев. При выборе курсов будьте внимательны, хорошо изучайте программу! Обязательно оцените, насколько квалифицированных специалистов готовит выбранное учреждение.

Стоимость курсов для девопс-инженеров, мягко говоря, недемократичная. В среднем за обучение просят заплатить 135 тыс руб. Но зато многие образовательные центры предлагают рассрочку до нескольких лет. В основном, с привлечением банков. Примечательно, что кратко- и долгосрочные курсы почти не отличаются в стоимости.

Цена обучения в ВУзах сильно варьируется. Минимальная стоимость по России составляет 28 тыс руб за год (в университете им. Кадырова в Чечне), а максимальная - 300 тыс руб (Высшая школа экономики в СПб, направление - программная инженерия). Средние цены установлены в МГТУ им. Н. Э. Баумана, РЭУ им. Г. В. Плеханова, университет им. Косыгина, СПбГЭУ (115 тыс руб/год в среднем). Недорого можно получить образование инженера-программиста в ВУЗе им. Витте по профилю “бизнес информатика” и Российском новом университете (42 тыс руб/год).

Где искать работу и на какую зарплату рассчитывать

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

  • IT-компании, зарабатывающие на сайтах, приложениях и программах (Mail.ru, 1С, Яндекс, Google, Uber и другие);

  • организации, имеющие IT-отдел, работающий для удовлетворения нужд фирмы (Сбербанк и любое другое финансовое учреждение, Ozon, Лента и прочие);

  • IT-агентства, занимающиеся разработкой приложений, программ и сайтов с целью ведения коммерческой деятельности.

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

Немного о зарплате. В среднем по России DevOps-инженеры получают 200 тыс руб. Самые высокие зарплаты зафиксированы в Москве и Санкт-Петербурге (350 тыс руб и выше). Начинающие специалисты могут рассчитывать на доход от 70-80 тыс руб. DevOps-инженеры среднего уровня - на 200-300 тыс руб. Опытные специалисты категории Senior могут зарабатывать и миллион рублей. Особенно если говорить о трудоустройстве за границей. В развитых странах Европы и США доход девопс-инженеров, работающих в крупных фирмах, исчисляется десятками тысяч долларов.

Востребованность профессии

Профессия DevOps-инженера высоко востребована. Согласно статистике Linux Foundation, являющейся авторитетной некоммерческой организации в области информационных технологий, в минувшем году около 65% IT-компаний находились в поиске девопс-инженера. По России такой статистики нет, но для объективной оценки востребованности профессии достаточно заглянуть на популярные площадки для поиска работы.

Например, за последний месяц на hh.ru нанимателями было добавлено около 1,4 тыс вакансий DevOps-инженера. Из них ⅔ ищут специалиста с опытом от трех лет (уровня мидл) и примерно 10% готовы принять на работу новичка. На «Яндекс.Работе» по состоянию на октябрь 2022 года опубликовано около 8 тыс. Соотношение работодателей в части требования к наличию опыта у сотрудника примерно такое же.

Если учесть, что девопс-инженер может быть и сисадмином, и разработчиком, то количество подходящих вакансий увеличится в разы. Например, судя по числу объявлений на hh.ru, в одной только Москве наниматели ищут более 5 тыс системных администраторов.

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

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

Специальность DevOps-инженера обладает рядом неоспоримых преимуществ:

  • высокий уровень дохода;

  • востребованность на рынке;

  • возможность карьерного роста (спустя 2-3 года работы можно претендовать на статус “middle”, а через 5-7 - “Senior”);

  • разнообразие навыков, применимых в других направлениях IT;

  • престижность профессии.

Минусы тоже есть:

  • сложность обучения, необходимость владеть огромным объемом навыков и знаний;

  • дороговизна курсов в образовательных центрах;

  • высокие требования со стороны работодателей;

  • колоссальная ответственность;

  • важность практических навыков (то есть, одной теории недостаточно);

  • ненормированный график труда (не всегда, но в большинстве случаев);

  • существенный уровень конкуренции в нише за счет слабого развития девопс-индустрии на отечественном рынке.

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

Оцените профессию

Голосуем!
Проголосовало: 0

Понравилась статья?

Комментарии 0