
Карьера DevOps Engineer: что нужно знать, чтобы зарабатывать $5500
Согласно исследованию портала DOU, зарплата DevOps-инженеров в основном растет быстрее доходов других технических специалистов. Кроме того, Global Market Insights прогнозирует рост рынка DevOps с $7 млрд в 2021 году до $30 млрд в 2028 году.
DevOps-инженеры обеспечивают более быструю и надежную разработку программного обеспечения, доставку, улучшение качества и удовлетворенность клиентов. Соответственно, спрос на специалистов во всем мире будет только расти.
Мы узнали у DevOps Engineer с 15-летним опытом Алексея Кудри, что такое DevOps и почему эти практики меняют мир разработки уже сейчас. Также обсудили, чем занимается девопс инженер и что нужно знать, чтобы им стать. Бонусом добавили полезные ссылки на книги, каналы и профессиональные сообщества в соцсетях.
Он долгое время работал с физическим оборудованием и виртуализацией в большом data center, начиная от распаковки оборудования и заканчивая проектированием и предоставлением собственных SaaS-решений пользователям в private cloud. Ведет Telegram-канал, где делится опытом SysOps и публикует советы, как стать DevOps Engineer.
А CTO & co-founder ITExpert Николай Клестов (6+ лет опыта в IT и организации рекрутинг-процессов) рассказал, что проверяют у специалистов по DevOps на собеседовании. Он работал с Depositphotos, Emerson, Ring и другими компаниями, в частности, консультировал по поиску DevOps-инженеров.
Кто такие DevOps (Девопс-инженеры)
DevOps — это простыми словами что за специалист такой? На самом деле DevOps Engineer — это как сисадмин и программист в одном лице. Традиционный цикл разработки программного обеспечения выглядит так:
Программисты небольшими порциями пишут код -> Отдают его в отдел тестирования -> Тестировщики пишут тесты и ищут ошибки в коде -> Если нашли — отдают программистам на переработку -> Если ошибок нет, код присылают на составление, чтобы включить его в новую версию программы -> После добавления этого кода в новую версию код снова тестируют: «дружит» ли новый код со старым, нет ли конфликтов -> Если есть, код отдается обратно программистам -> Если все в порядке, код выкатывается на сайт.
В крупных компаниях с масштабными проектами с таким подходом «вылезает» немало минусов. Все потому, что есть четкое разделение зон ответственности: есть программисты, которые пишут код; дизайнеры, которые натягивают дизайн на этот код; тестировщики, которые ищут баги и следят, чтобы все отрабатывало верно, а также другие специалисты, обеспечивающие эти процессы.
Каждый из этих отделов сопряжен со своим рабочим окружением: они следят за своими библиотеками, фреймворками и операционной системой. Однако даже если что-то работает у одних, это может не работать у других. На финише все тратят время на синхронизацию требований к коду, компонентам, фреймворкам и библиотекам, а работа стоит.
С DevOps-подходом к разработке процессы происходят по-другому:
- если что-то можно автоматизировать — автоматизируем;
- каждый отдел использует тот же софт и настройки;
- финальный код должен как можно быстрее доходить до того, кто пользуется этим софтом.
Благодаря этому каждый отдел получает единую настроенную среду для работы — ею пользуются программисты, тестировщики, аналитики и служба поддержки. Это помогает быстрее тестировать и выпускать код, а также экономит время на настройку каждого рабочего места. Соответственно, первоначально девопс являлся методологией разработки. Позже сформировалась отдельная DevOps-профессия.
Обязанности девопс-инженера варьируются в зависимости от проекта, но обычно это создание и настройка инфраструктуры: автоматизация и улучшение процессов разработки и релизов, работа с разработчиками, чтобы убедиться, что код соответствует необходимым характеристикам, а также обеспечение безопасности и защиты инфраструктуры.
👉 Главные задачи DevOps-инженера — сделать так, чтобы автоматизации было как можно больше, а также чтобы она ускоряла разработку и операционные процессы в команде.
DevOps’ы могут разделяться на специализации:
- Классический DevOps специалист должен уметь работать с Linux/Windows/Mac OS системами, знать CI/CD процессы, понимать базовые принципы системного администрирования и так далее.
- TechOps тестирует и мониторит уже готовую систему — работает с инцидентами и техподдержкой. Он — эксперт в готовых сервисах, но не обладает квалификацией в их создании.
- CloudOps применяет практики и процессы в облачной архитектуре, обеспечивает оптимальное использование бюджета на публичные облака.
- DevSecOps сосредоточен на оценке рисков и интеграции технологий безопасности данных. Его задача — мониторинг и улучшение гибкости системы.

«Для запуска нового продукта и создания приложения требуются по меньшей мере две команды: разработчики (developers, Devs), пишущие программы, и системные администраторы (operations, Ops), которые занимаются настройкой и обслуживанием серверного оборудования.
Команда разработчиков предоставляет программное обеспечение команде администраторов, чтобы те, в свою очередь, запустили его в нужное время на оборудовании компании. То есть, администраторы в прямом смысле выполняют запуск вручную, начиная от подключения и настройки оборудования и заканчивая установкой зависимостей ПО через ввод команд в консоли.
Возможные ошибки, отсутствие подробной документации описания процесса, необходимость конфигурировать некоторые серверы другим способом — все это замедляет выпуск новых версий ПО и приводит к непредсказуемому результату.
Вы могли слышать типичный диалог между разработчиком и админом: “У меня на лэптопе все работает!” Для решения общего вопроса, а это в основном разработка ПО, не должно быть границ между Dev и Ops. DevOps — не название команды, должности или определенной технологии. DevOps — это набор процессов, идей и методик.
Как результат, компания со специалистом по DevOps получает большое количество плюсов: вместо слияния разных ветвей используется интеграция, код находится в состоянии быстрого развертывания. Разработчики могут обновлять код десятки раз в день, а не ждать часами или даже днями.
Вместо регулярных простоев и перебоев в работе получаем системы с автоматическим восстановлением, мониторинг с оповещениями и отсутствие какой-либо ручной работы. Компании, которым удалось овладеть DevOps-практиками, показывают удивительные результаты: значительно повышаются выпуски новых функций, снижается количество дефектов и частота сбоев».
DevOps: навыки (hard & soft skills), нужные специалисту
Хотите стать DevOps? Что нужно знать специалисту на старте? Все зависит от технологий на проекте, однако вход в профессию будет значительно легче, если вы с порога владеете знаниями и навыками работы с:
- облачными платформами (например, AWS, Google Cloud или Microsoft Azure);
- вычислительными сетями и протоколами: основы топологии сеток, основные протоколы стека TCP/IP (IP, TCP, UDP, HTTP/HTTPs);
- концепциями API (REST, gRPC, GraphQL);
- IAAC-инструментами (Terraform/Terragrunt);
- контейнеризацией (Docker, Kubernetes);
- инструментами для непрерывной интеграции (CI) и доставки (CD) (Jenkins, GitlabCI, CircleCI, GitHub Actions);
- системами контроля версий (git и так далее);
- инструментами для конфигурационного управления (Ansible, Puppet);
- языками программирования (Python, JavaScript/TypeScript или Go);
- ОС и инструментами для работы с ними.
Среди soft skills — коммуникабельность, самомотивация, сильные аналитические способности, умение быстро учиться и решать проблемы — в противном случае карьерный роадмап не работает.
Также необходимо знание английского языка, если заказчик — не украинская компания. При этом важно владение именно техническим английским (достаточно уметь читать документацию и интерфейсы).
Как стать девопс инженером?

«Как стать девопсом? Придется многое изучить, также нужно будет обновлять знания, ведь каждое приложение, которым вы пользуетесь, постоянно меняется. Добавляются новые возможности, некоторые функции обретают статус устаревших, что требует обновления текущих скриптов и кода.
В целом еще до начала пандемии мы обсуждали с коллегами вопрос входа в профессию девопса. Некоторые придерживались мнения, что DevOps Junior-уровня не существует, потому что очень высокий порог вхождения. То есть DevOps становились либо разработчики, либо системные администраторы с большим опытом и сразу уровня Senior.
Однако ковид изменил правила игры. Спрос на DevOps-инженеров был настолько велик, что можно было встретить интерна специалиста, которого закрепляли за проектом, где он прикреплен к ментору и мог присоединиться к команде, увидеть своими глазами все, что там происходит. Это позволяет быстро получить базовые знания.
Однако прежде чем искать ментора или команду, нужно овладеть навыками программирования. Например, я на разных проектах использовал Python, Go и JavaScript. Также важно ознакомиться с системами контроля версий, облачными технологиями, системами автоматизации процессов разработки и развертыванием приложений.
И нужно интересоваться DevOps-культурой в целом, поскольку это не только технические навыки, но и в целом подход к разработке программного обеспечения и обеспечению сотрудничества между разработчиками и администраторами».
Junior -> Middle -> Senior DevOps: описание отличий в грейдах DevOps Engineer
Собрали «шпаргалку», чем отличаются скиллы для девопс-разработчика в зависимости от уровня специалистов.
Junior DevOps Engineer
Кандидат должен знать базовые вещи. В интервью оценивают логическое мышление и готовность к обучению. Ценится умение самостоятельно находить информацию и задавать вопросы более опытным коллегам.
Devops Engineer — обязанности и базовые требования для джуна:
- Знание ОС: Linux, в западных компаниях часто Windows.
- Базовые знания инфраструктуры и сети, разработки программного обеспечения, модель OSI, CI/CD.
- Знания Kubernetes.
- Английский на уровне чтения технической документации.
- Умение усваивать большие объемы информации и обучаться.
Этими навыками можно овладеть на DevOps курсе — такие проводят крупные IT-компании (например, SoftServe) или онлайн-школы.
Middle DevOps Engineer
DevOps уровня Middle уже умеет самостоятельно выполнять подробно сформулированные задачи, но полного понимания предметной области еще нет. Работодателей на собеседованиях интересует понимание основных типов данных в языках программирования, таких как: стек, очередь, массив, когда и какие из них применять.
Базовые требования:
- Базовое управление Linux.
- Docker и Kubernetes.
- Траблшутинг.
- Понимание и применение разных практик, опыт работы с метриками.
- Опыт написания плейбуков Ansible, задачи Jenkins.
- Работа с мониторингом.
Senior DevOps Engineer
Senior умеет решать абстрактно сформулированные задачи, принимает решения и берет на себя ответственность за результат. Знает, когда нужно присоединить к задаче коллег, может координировать их работу. Обладает более глубокими знаниями, чем Middle, а также понимает верхнеуровневые процессы с позиции бизнеса.
Базовые требования:
- Обязательно знать конкретное направление. Если CI/CD — знание hands on, с установкой с нуля, настройкой, направление проекта. Если стек Microsoft — Visual Studio, cmake для С++, инсталляторы.
- Базовое понимание бюджетирования.
- Богатый багаж инструментария: виртуализация, контейнеризация, агрегация логов, метрик.
- Понимание верхнеуровневого процесса организации и будущих шагов по развитию практик DevOps в компании, внедрение новых практик и системный подход.
Team Lead DevOps Engineer
Team Lead — это «коннектор» DevOps с бизнесом. На первом месте у него управленческие навыки. Помимо вероятного опыта в AWS, Google Cloud Platform, Terraform и Kubernetes, тимлид должен использовать подходы проектного менеджмента (например, Agile), уметь оценивать эффективность работы команды и работать с метриками (MTTD, MTTR и другими). Не менее важно умение перевести IT-язык на бизнес (и наоборот) и навыки давать эффективную обратную связь.
А что дальше? Куда может развиваться DevOps Engineer
Обычно дальнейшее карьерное развитие девопса выглядит так:
Senior DevOps -> DevOps Team Lead -> Director of Engineering
или:
Senior DevOps -> Solutions Architect -> VP of Engineering Senior DevOps -> CEO.

«Путь карьерного роста может быть таков:
- Senior DevOps: это первый этап профессионального роста для DevOps-инженеров, который предусматривает более сложные задачи, чем на начальном этапе.
- Team Lead: управляет командой DevOps-инженеров, должен обладать глубокими знаниями в области разработки программного обеспечения, а также уметь управлять процессами разработки, тестирования и внедрения продукта. Главная задача специалиста — обеспечить эффективную и продуктивную работу команды DevOps-инженеров.
- Manager/Head of DevOps: ответственен за управление командами разработчиков, но его главной задачей является обеспечение связи между разными командами, создание и реализация стратегий для улучшения процессов разработки и внедрения продукта.
- DevOps Architect: роль требует понимания принципов и практик DevOps, а также умения проектировать и реализовывать инфраструктуру, поддерживающую процессы разработки и снабжения.
- Технічний директор (CTO): ответственный за техническое развитие компании и принятие стратегических решений, касающихся технологий.
Также в IT DevOps Engineer может развиваться в более специализированных направлениях, таких как: DevOps-инженер по безопасности, мониторинге, DevOps-инженер со знанием операционных систем, DevOps по аналитике данных и так далее».
DevOps: зарплата специалиста в IT
Средняя зарплата DevOps опытного уровня (Middle+) составляет $5500. В целом «температуру по зарплатам» можно посмотреть на DOU.
Упрощенно медианный доход в зависимости от уровня выглядит так:
- Trainee (до года опыта): $1100.
- Junior (1–3 года опыта): $2400.
- Middle (4–6 лет опыта): $5000.
- Senior (6+ лет опыта): $5000+.
При переманивании специалиста могут предлагать и большее, чем в среднем для DevOps определенного уровня.
Как пройти интервью на Middle+ DevOps Engineer: о чем спрашивают и на что обращают внимание
Отвечает CTO & co-founder ITExpert Николай Клестов. Какие требования проверяют у специалистов на собеседовании:

«Из наиболее очевидного: вопросы по CI/CD инструментам. Информация о том, как по пушу в git развернуть новый тестовый сервер и прогнать все автотесты должна отскакивать от зубов. Для общего развития следует также ознакомиться с дополнительной программой, например, GitLab, чтобы понимать отличия.
Синиорных DevOps Engineer также спрашивают о:
- Конфигурировании: Ansible, для облаков еще и о Terraform или CloudFormation (для AWS-инфраструктуры).
- Скрипты: практически обязательно YAML, а также, вероятно, о bash и основах Python.
- Орестрация в k8s. Современный Highload обеспечивается хорошим DevOps с Kubernetes-кластером, а не знаниями бэкенд-разработчиков. Это значит, что для работы с крутой зарплатой нужно овладеть не просто Docker’ом, но и полноценной оркестрацией в k8s. При этом графических оболочек типа Rancher обычно недостаточно. Нужно легко работать с load-balancing инструментами, Ingress-контроллерами и (желательно) с kubectl.
Кроме того, кандидата могут спросить о базе системного администрирования (как о html спрашивают любого веб-разработчика). Вам придется работать по меньшей мере с мониторингом и системами логов, а также иногда и развертывать базы, конфигурируя их под разные среды».
Больше об особенностях проведения собеседований читайте в нашей статье «Чек-лист кандидата в IT».
Бонус: полезные ресурсы для DevOps Engineers
- Книга от Google о SRE: здесь можно получить знания об ОС, есть информация о release engineering, мониторинг-системах и service level agreement.
- Книга UNIX and Linux System Administration Handbook, Evi Nemeth & Trent R. Hein: гайд по системному администрированию. Авторы книги — пионеры в UNIX и AWS, преподаватели топовых университетов мира. Работали в Internet Society, ООН и других известных организациях.
- Книга Continuous Delivery: Reliable Software Releases, Jez Humble & David Farley: доступно о конвейере разработки, непрерывной доставке, стратегии ролаута и других базовых понятиях.
- Книга The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, Gene Kim, Patrick Debois, John Willis & Jez Humble: бестселлер о том, как DevOps-практики трансформируют ведение IT-бизнеса. Книга содержит кейсы Amazon, Etsy, Google, Facebook, Intuit.
- Книга Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series, Jez Humble & David Farley: принципы и технические методы, позволяющие быстро предоставлять пользователям новые и ценные функции благодаря автоматизации процесса сбора, развертывания и тестирования.
- Книга Kubernetes Security, Liz Rice & Michael Hausenblas: информация и инсайты о функциях безопасности Kubernetes, в частности о том, когда их использовать.
- Книга Cloud Native DevOps with Kubernetes: Building, Deploying, and Scaling Modern Applications in the Cloud, John Arundel & Justin Domingus: о том, на что способен Kubernetes и что вы можете с ним делать, от экспертов по облачным технологиям.
- Telegram-канал CatOps — апдейты новых версий инструментов, зарубежные статьи и авторские обзоры.
- Telegram-канал ДевОпс Інженер — топовые технологии и решения, реальные архитектурные проблемы, контейнеры, оркестраторы, скейлинг и мониторинг.
- Telegram-канал ITExpert Vacancies — карьерные советы и вакансии для DevOps Engineer и не только.
DevOps-инженеры становятся еще нужнее, чем раньше. Количество вакансий для DevOps на известных сайтах поиска работы увеличилось на 75%, а упоминания о навыках DevOps в соцсетях, таких как LinkedIn, выросли на 50%. Это подтверждает, что рынок DevOps будет развиваться, а кадровый голод будет только увеличиваться.