Согласно Отчету о вакансиях Open Source за 2020 год, подготовленного Linux Foundation и edX, западные работодатели больше нуждаются в ИТ-специалистах с навыками DevOps (65%), чем в разработчиках (59%). Наиболее востребованы они в крупных организациях, где разрабатывается много приложений и ведется управление большим количеством серверов в рамках B2C. Такие специалисты высокооплачиваемы, поэтому в небольших компаниях их обязанности часто распределяются между разработчиками, инженерами по инфраструктуре и системными администраторами. Сегодня поговорим, почему DevOps-инженер нужен бизнесу, в чём его отличие от системного администратора и SRE, и на что обращают внимание наши консультанты, когда ищут кандидатов этого профиля.
DevOps (Development Operations) — это методология, помогающая наладить эффективное взаимодействие между разработкой и эксплуатацией ПО. DevOps-инженер работает на стыке нескольких IT-специализаций и занимается автоматизацией жизненного цикла ПО, способствуя увеличению производительности, уменьшению операционных затрат, сохранению рыночной конкурентоспособности и быстрому решению возникающих проблем.
Главная задача DevOps-инженера — увеличение эффективности и безопасности разработки ПО. На разных этапах жизненного цикла цифровых продуктов эти специалисты могут участвовать в решении следующих вопросов:
Для решения своих задач DevOps-инженер использует определенные инструменты. В зависимости от уровня и опыта специалиста их количество может быть разным. Назовём основные технологии, которыми может владеть кандидат данного профиля:
Чтобы определиться с уровнем нужного специалиста, следует оценить сложность задач в компании. Например, чтобы срочно разработать релизную политику или систему управления развертыванием Big Data сервисов необходим сотрудник Senior-уровня, а для проектов без сжатых сроков релиза можно нанять нескольких Junior-инженеров: на первых порах они будут вникать в процессы, но по мере профессионального роста смогут решать много задач.
Если вы хотите усилить команду, которая работает с конкретными технологиями, например, с высоконагруженным Jaeger, то нужен DevOps-инженер именно c этой компетенцией. Если же необходим специалист общего профиля, то стоит уделить внимание базовым знаниям кандидата, его опыту в автоматизации и мониторинге, тому, какие инструменты он выбирает для решения задач, схожих с задачами нанимателя. Важно, чтобы претендент совпадал по этим параметрам с командой работодателя.
Существует заблуждение, что задачи DevOps-инженера может решить системный администратор. К тому же часто, DevOps начинают свою карьеру в IT именно с позиций администрирования. Отчасти требования к этим специалистам схожи, но при детальном анализе выявляются и существенные различия:
Ещё одной IT-специализацией, родственной DevOps, считается SRE (Site/SystemReliabilityEngineering). Если коротко, то DevOps ближе к системному администрированию, а SRE — к программированию. Функционал SRE-инженеров шире и от них требуется полноценный опыт в роли Middle-разработчика, в то время как от DevOps не ожидают серьёзных знаний в написании кода. Потребность в таких специалистах появляется, когда софт становится очень сложным и нагруженным, и необходимо обеспечить надёжность работы систем. Отчасти SRE можно сравнить с архитекторами: на вакансии этого типа подходят лишь опытные кандидаты, знающие что и когда может пойти не так, и как это можно предотвратить или исправить. Как отдельная специализация SRE появилась в компании Google и не так давно перекочевала на российский рынок. В отечественных реалиях ещё нет чёткого понимания отличий DevOps от SRE, поэтому, часто в вакансиях можно увидеть смешанный список требований к кандидатам — и DevOps, и SRE. Обычно это означает, что от SRE-инженера требуются навыки автоматизации и разворачивания, но не все соискатели умеют или хотят этим заниматься.
Искать опытных DevOps можно в социальных сетях, на профессиональных ресурсах (dzone.com, puppet.com, stackoverflow.com) или в профессиональных Telegram-каналах (DevOps_Ru, DevOps Jobs, Админим с Буквой и т.д.). А также можно обратить внимание на мероприятия, тематика которых связана непосредственно с DevOps или с технологиями, относящимися к DevOps-практикам.
Если у вас есть задача усилить команду разработки сильными DevOps-инженерами, оставьте заявку, и мы подберем специалистов с релевантным опытом работы.