Кто такой DevOps-инженер, и чем он занимается

Ранее я рассказал о том, что такое методология DevOps и кому она нужна. Сегодня — фокус на DevOps-специалистах: их задачах, зарплатах и навыках.

Изображение — Ed Ivanushkin — CC BY-SA

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

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

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

Фишка DevOps-инженера в том, что он совмещает множество профессий: админа, разработчика, тестировщика и менеджера.

Джо Санчес, DevOps-евангелист из VMware, компании-разработчика программного обеспечения для виртуализации, выделил ряд навыков, которыми обязан обладать DevOps-инженер. Помимо очевидного знания методологии DevOps, этот человек должен иметь опыт администрирования ОС Windows и Linux и опыт работы с инструментами автоматизации вроде Chef, Puppet, Ansible. Еще он должен уметь писать скрипты и код на паре-тройке языков и разбираться в сетевых технологиях.

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

Кто нанимает

DevOps-инженеры могут принести пользу любой организации, чья деятельность связана с разработкой приложений или управлением большим количеством серверов. DevOps-инженеров нанимают ИТ-гиганты вроде Amazon, Adobe и Facebook. Еще они работают на Netflix, Walmart и Etsy.

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

Сколько платят

DevOps-инженеры зарабатывают больше всех в отрасли. Средний заработок таких специалистов по миру составляет от 100 до 125 тыс. долларов в год.

В США они получают 90 тыс. долларов в год (500 тыс. рублей в месяц). В Канаде им платят 122 тыс. долларов в год (670 тыс. рублей в месяц), а в UK — 67,5 тыс. фунтов стерлингов в год (490 тыс. рублей в месяц).

Что касается России, то московские компании готовы платить DevOps-специалистам от 100 до 200 тыс. рублей в месяц. В Санкт-Петербурге работодатели чуть щедрее — предлагают 160–360 тыс. рублей в месяц. В регионах указывают зарплату 100–120 тыс. рублей в месяц.

Как стать специалистом по DevOps

DevOps — это относительно новое направление в IT, поэтому устоявшегося перечня требований к DevOps-инженерам нет. В вакансиях среди требований на эту должность можно встретить как навыки администрирования Debian и CentOS, так и умение работать с дисковыми RAID-массивами.

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

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

Чтобы понять, где знаний пока не хватает, можно воспользоваться мини-википедией на GitHub или ментальной картой. Резиденты Hacker News также рекомендуют почитать книги «Проект «Феникс», «Руководство по DevOps» от авторов методологии и «Философия DevOps. Искусство управления IT» под грифом O'Reilly Media. В списке рекомендаций есть и другая литература, заточенная под развитие отдельных навыков, например «Современное администрирование Linux» от того же издательства O'Reilly.

Еще можно подписаться на рассылку Devops Weekly, почитать статьи тематического портала DZone и начать общаться с DevOps-инженерами в Slack-чате. Еще стоит изучить бесплатные курсы на Udacity или edX.

Что еще почитать в выходные:

0
30 комментариев
Написать комментарий...
Serge Nekoval

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

Ответить
Развернуть ветку
Anton Vladimirovich

Когда разрабы поняли что они разрабы, стало грустно им. Они стали писать software engineer.

Ответить
Развернуть ветку
Serge Nekoval

И это тоже, собственно появление "архитекторов" тоже из этой серии.

Ответить
Развернуть ветку
Anton Ilabanau

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

Ответить
Развернуть ветку
Sergei Timofeyev

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

Ответить
Развернуть ветку
Cyrill Kovtun

не просто понимание, но и не меньше, чем волшебно взявшееся 1-3 года опыта  такой работы. Chef, Puppet, Ansible, Jenkins

Ответить
Развернуть ветку
Andrey F

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

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Andrey F

типичная работа мартышки на нижнем уровне it иерархии.

Ответить
Развернуть ветку
Семён Бочкарёв
постройте архитектуру
типичная работа мартышки

Хочу узнать, чем в вашем мире занимаются высшие уровни IT-иерархии.

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Anton Ilabanau

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

работа девопса это такой tech ради tech. некоторых прет, ну и ок :)

Ответить
Развернуть ветку
Семён Бочкарёв

Слишком жирно, попробуйте потоньше.
DevOps как минимум обязан уметь в развертывание. Разработчики обычно не умеют в это. Я встречал сеньоров, не имеющих представления, как для продакшна настраивать тот же nginx и как работает reverse proxy.

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
IO

DеvOps начался намного раньше получения красивого названия в 2009

Ответить
Развернуть ветку
Вася Пражкин

И когда же, интересно узнать?

Ответить
Развернуть ветку
Sergei Timofeyev

Внезапно с момента появления компьютеров.

Ответить
Развернуть ветку
IO
DevOps — это относительно новое направление в IT

Относительно новое это DevSecOps, а DevOps уже минимум 15 лет существует.

Ответить
Развернуть ветку
Dmitry Kabanov

Боюсь, что с 15 годами вы перегнули. Считается, что термин DevOps был впервые использован на конференции O’Reilly в 2009 году (презентация сотрудника Flickr "10+ Deploys per Day: Dev and Ops Cooperation"). Альтернативная версия по вики — конференция devopsdays (тоже 2009 год).

Не думаю, что вакансии именно с такой формулировкой появились раньше, что уж говорить про должностные инструкции и понимание каких-то относительно единых требований к DevOps-инженерам. DevSecOps — это просто специализация, не меняющая сути. Про это есть тред на кворе с диаграммами Венна https://www.quora.com/What-is-the-difference-between-DevOps-and-DevSecOps

Ответить
Развернуть ветку
Evgeny Efimenko

Первая версия Puppet вышла в 2005 году

Ответить
Развернуть ветку
Вася Пражкин

.

Ответить
Развернуть ветку
Voin Mraka

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

Ответить
Развернуть ветку
Аккаунт удален

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

Ответить
Развернуть ветку
Voin Mraka

да не, смотря какие кодеры)
если партия скажет - надо, комсомольцы ответят - есть!

Ответить
Развернуть ветку
Cyrill Kovtun

Бред. Девопс это сисадмин для программистов.
Кто такой продакт?

Ответить
Развернуть ветку
Никита Жаров

Ну DevOps, по сути, связующее звено в организации работы разработчиков непосредственно и практиков, если я всё правильно понимаю

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Serega Sheypak

Бредятина. Стартап возьмёт девопса, а не трёх технарей с выделенными ролями. Девопс, это development operations. Он занимается автоматизацией процесса разработки. Он не менеджер и не тестировщик.

Ответить
Развернуть ветку
Руслан Зиганшин

Задача ИдеальногоDevOps (ТМ) — лишить эту позицию смысла. Автоматизировать все и тихо уйти=)

В статье (как и предыдущей, автору респект за качество) в основном рассматривается пример приложений. Тут все сильно зависит от нативности/кроссплатформенности разработки, расскажу про пример связанный с большими данными.

Есть кластер hadoop, отличное решение, к тому же open source. Есть python, под который уже есть терабайты удобных и полезных библиотек. Есть дата аналитик, который может в питон и математику.

Но все данные, необходимые аналитику хранятся на кластере, который питон не принимает. Зато отлично понимает java/scala. Поэтому чтобы создать самую простую модель на имеющихся данных devops будет нужен минимум дважды — выгрузить на локальную машину данные для создания модели и её проверки, а потом выкатить готовую модель на прод.

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

Если есть постоянная необходимость в человеке за $100 000 для автоматизации, нужно найти способ реально автоматизировать процесс, а не через белковую прокладку. В работе с hadoop мы так и сделали, теперь экономим и продаем как коробочное решение.

PS. Переживающим за судьбу наших devops — автоматизировав и упаковав, они преквалифицировались в продакт овнеров

Ответить
Развернуть ветку
Anton Ilabanau
> преквалифицировались в продакт овнеров

а что у вас продакт овнер делает? в моем понятии это человек решающий что делать в продукте, в т.ч. общается с клиентами и т.п.
т.е. полностью на другом конце от девопса (сисадмина). какая связь?

Ответить
Развернуть ветку
Руслан Зиганшин

"Совершенно другой конец от девопса" ровно до момента, когда продукт и есть замена девопса. Т.е. всю боль, все потенциально узкие места и сам смысл продукта понимают только они и, возможно, HR/собственники но уже исключительно в деньгах.

Ответить
Развернуть ветку
Anton Ilabanau

просто я видел очень мало девопсов, любящих общаться с клиентами в принципе. продакт овнер конечно это предполагает.

Ответить
Развернуть ветку
Руслан Зиганшин

Верно. Но т.к. с той стороны баррикад точно тот же психотип, все отлично=)

Ответить
Развернуть ветку
Юлия Карпова

Мы периодически публикуем в нашем ТГ-канале позиции для DevOps-специалистов - кандидатов на позиции рекомендуем бесплатно @realhrvacancy (канал от кадрового агентства realhr.ru)

Ответить
Развернуть ветку
27 комментариев
Раскрывать всегда