Не только ИТ-джедаи: почему DevOps нужен всем и как мы разработали курс по нему для техподдержки

И пять советов, как выбрать стоящее обучение азам DevOps.

Не только ИТ-джедаи: почему DevOps нужен всем и как мы разработали курс по нему для техподдержки
Иван Костык
Директор по продуктовому менеджменту Т1 Цифровая Академия (Холдинг Т1)

Меня зовут Иван Костык, я директор по продуктовому менеджменту в Т1 Цифровой Академии — изучаю запросы заказчиков на образование сотрудников и генерирую концепты курсов. Недавно мы сделали курс по DevOps для первой и второй линий техподдержки крупного В2В-разработчика. Казалось бы, зачем такие обширные знания саппорт-менеджерам? И уж если учить их основам DevOps, то каким именно? Сейчас расскажу.

Кто такие девопсеры и какой на них спрос

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

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

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

Зачем понадобился курс заказчику

У компании был штат высококвалифицированных инженеров, которые на выбранном стеке разрабатывали собственные продукты для компании. Однако, со временем руководители заметили, что много времени уходит не на кодинг и создание нового, а на обработку запросов. Сотрудники 1-2 линии часто не могли решить проблему пользователей и передавали ее на вторую линию, а те — на третью. Расходы росли и с этим надо было что-то делать.

Опросили сотрудников и поняли, что дело в большом и разнообразном стеке технологий, которые предлагает компания и с которыми надо уметь работать сотрудникам. Например, знание kubernetes или Openshift не сильно распространенно среди поддержки, и все запросы, связанные с ними, сразу передавались на 3 линию. Было принято решение унифицировать знания команды и познакомить всех не только с особенностями каждого софта в портфеле, но и со смежными инструментами разработки и поддержки (например, решениями по автоматизации) — так, чтобы менеджеры 1-2 линии поддержки могли быстро понять проблему клиента, самостоятельно решить возникшие мелкие инциденты, либо собрать достаточно информации о проблеме из логов, чтобы упростить работу специалистов 3 линии.

Другими словами, в саппорте потребовалось срочно развить базовые DevOps-навыки.

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

Сюда относится и техподдержка B2B ИТ-компаний, в том числе первая линия: технологии все время усложняются, и компетенции должны постоянно расти даже у сотрудников с потоковыми задачами. Теперь им тоже важно понимать, как работают плейбуки, что такое Kubernetes, какие виртуальные машины бывают и как их оркестрировать — то есть нужно хотя бы поверхностно знать все, что связано со стеком работодателя.

Еще лет пять назад это был удел ИТ-джедаев, редких специалистов с обширным скиллсетом. А сейчас без элементарных DevOps-навыков у каждого члена команды (или хотя бы у большинства) процесс будет спотыкаться — и в итоге бизнес потеряет деньги.

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

Тяжело ли поддержке освоить основной стек

Хотя требования к DevOps-специалистам звучат внушительно, освоить базу при желании может почти каждый ИТ-специалист. Для старта обучения не требуется продвинутых знаний и большого опыта в ИТ — достаточно уметь кодить хотя бы на одном языке, будь то bash, python, java, kotlin, c, c++ или c#, и разбираться в принципах автоматизации.

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

Почему заказчики отказываются от готовых курсов. А если все-таки и берут готовый, то какой именно

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

Комплекс из 4-5 курсов обойдётся дороже, чем разработка обучения под себя. Кроме того, кастомизация — это не так долго: мы разработали программу ввода в DevOps за три месяца. Желающих обучиться было настолько много, что пилот мы стартовали сразу на 100 человек.

Если все же обучение базовому DevOps нужно здесь и сейчас — берите готовый продукт. Только проследите, чтобы он:

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

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

  • Материалы курса накладывались на реалии компании. Это могут проверить профессиональные сообщества, указав какие роли существуют в компании и описав с чем специалисты должны уметь работать.

  • Предлагал не только теорию, но и практику. Для DevOps это особенно важно.

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

Что в итоге с обучением техподдержки

Нам повезло с заказчиком: он пришел с уже начальным запросом, по которому был нужен курс для подготовки специалистов Openshift. Однако, когда мы проводили кастдев — опрашивали потенциальных учеников и их руководителей — увидели, что проблема шире и требуется комплексное обучение сотрудников.

Не только ИТ-джедаи: почему DevOps нужен всем и как мы разработали курс по нему для техподдержки
Не только ИТ-джедаи: почему DevOps нужен всем и как мы разработали курс по нему для техподдержки
Не только ИТ-джедаи: почему DevOps нужен всем и как мы разработали курс по нему для техподдержки

Что в программе?

  • Закладываем майндсет DevOps: знакомимся с микросервисной инфраструктурой, разбираем ее общие принципы и отличия от монолитной архитектуры.

  • Переходим к практической стороне DevOps: изучаем системы управления и версионирования кода Git и Bitbucket. Это самый большой блок — в этих системах DevOps-инженеры чаще всего и работают, и без их понимания дальше не продвинуться.

  • Учимся оркестрации ПО при помощи программы Docker. На примере Docker ученики разбираются в логике контейнеризации микросервисов — и тем самым закладывают базу для работы c Kubernetes, софта для автоматизации развертывания, масштабирования и координации контейнеризированных приложений.

  • Разбираемся с OpenShift, продвинутой надстройкой над Kubernetes, рассказываем про нюансы обоих инструментов.

  • Рассказываем про инструменты построения пайплайнов TeacmCity и Jenkins.

  • Учим Observability — мониторить производительность приложений и понятно визуализировать результаты.

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

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

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

Что дальше?

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

Например, к нашему курсу по DevOps планируем добавить знакомство с Istio (самое популярное решение для управления сетевым трафиком), Ansible (это инструмент, который автоматизирует работу с виртуальными машинами) и расширить модуль об ELK (этот стек из приложений Elasticsearch, Logstash и Kibana помогает искать, обрабатывать, анализировать и визуализировать данные).

В России к тому же технологии активно импортозамещаются — и тот же Bitbucket, OpenShift, Oracle, TeamCity и прочие наверняка скоро заменят. А значит, нужно будет снова корректировать курс и снова учиться.

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