DevOps-инженеры: как постичь мастерство оптимизации

DevOps-инженер – профессия относительно новая, но она быстро вошла в список самых востребованных на рынке. Почему это произошло, что это за специалисты и как стать DevOps-инженером, рассказывает директор департамента по работе с персоналом BIA Technologies Юлия Полякова.

DevOps-инженеры: как постичь мастерство оптимизации

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

Направление DevOps появилось в России примерно в 2014 — 2016 году, когда процессы начали радикально меняться в связи с курсом на импортозамещение. Поскольку параллельно шла автоматизация, тренд с каждым годом только усиливался.

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

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

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

Задачи и навыки

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

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

DevOps-инженеру необходим широкий круг навыков, вот основные из них:

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

2. Работа с кодом, написанным другими разработчиками: бытует предубеждение, что проще написать код с нуля, чем разбираться в чужом, но это далеко не всегда так. Чаще всего такой подход – неоправданные трудозатраты.

3. Работа с виртуальными машинами: DevOps должен уметь устанавливать и настраивать виртуальные машины, чтобы упаковывать приложение в контейнер.

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

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

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

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

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

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

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

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

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

Начать дискуссию