В наши дни навыки автоматизации являются обязательными для ИТ-специалистов. Опрошенные порталом Enterprisers Project эксперты обсуждают семь конкретных компетенций в сфере ИТ-автоматизации — технических и не очень, — которые пользуются особенно высоким спросом.
От «традиционных» ИТ-должностей (таких как разработчик ПО, системный администратор или аналитик по безопасности) до более современных позиций, таких как инженер DevOps, инженер облачной платформы или инженер по надежности систем (SRE) — везде навыки автоматизации актуальны, а зачастую и необходимы.
Так что если вы хотите повысить свою привлекательность на рынке труда в сфере ИТ, развитие навыков автоматизации — отличный способ сделать это. У этих компетенций есть дополнительный бонус — мобильность: если вы не хотите ограничиваться какой-то конкретной должностью или функцией, знание методов и технологий автоматизации может проложить вам дорогу к другим должностям.
Конечно, «навыки автоматизации» — это широкая категория. Ниже мы рассмотрим семь подкатегорий — включая нетехнические качества, хорошо сочетающиеся с соответствующими технологическими навыками, — которые, по мнению ИТ-лидеров и рекрутеров, пользуются большим спросом в настоящее время.
1. Инструменты и практики, ориентированные на DevOps
DevOps и автоматизация тесно связаны между собой; в результате многие навыки и технологии, обычно ассоциирующиеся с DevOps, также востребованы на должностях, ориентированных на автоматизацию в целом.
«DevOps стала стандартной методологией разработки ПО, а также развертывания облаков, поэтому тем, кто не понимает принципов и практик DevOps, придется нелегко, — отмечает Клайд Сиперсад, старший вице-президент и генеральный менеджер Linux Foundation по обучению и сертификации. — Все больше и больше профессионалов осознают это и то, что сочетание технологий Kubernetes и Linux с практикой DevOps приводит к превосходным результатам. В будущем это понимание будет только расширяться».
Если у вас есть солидный опыт работы с DevOps, это заинтересует многих менеджеров по найму, которые хотят укрепить возможности автоматизации своих организаций. При этом с точки зрения инструментария выделяется одна конкретная область — инфраструктура как код (IaC).
«IaC — это один из самых важных подходов к автоматизации, — говорит Крис Николсон, руководитель группы ИИ в Clipboard Health. — IaC облегчает запуск и управление большими вычислительными кластерами, что, в свою очередь, облегчает быстрое внедрение новых продуктов и функций, а также масштабирование в ответ на спрос».
С этим согласна Келси Персон, старший менеджер проектов в рекрутинговой компании LaSalle Network. По ее словам, опыт работы с IaC (и другими инструментами DevOps) сейчас очень важен в резюме, потому что он указывает на знания и способности, необходимые для реализации значительных инициатив по автоматизации в других областях.
«Один из навыков, который мы видим все более востребованным, — это знание инструментов DevOps, а именно Ansible, — говорит Персон. — Он может помочь организациям автоматизировать и упростить задачи и сэкономить время, которое разработчики и специалисты DevOps затрачивают на установку пакетов или настройку множества серверов».
2. Языки сценариев
Умение писать собственные сценарии автоматизации является основой работы, ориентированной на автоматизацию — по сути, это навык, который никогда не выходил из моды, даже несмотря на то, что более широкий спектр инструментов (например, некоторые программы для RPA и инструменты Low-code/No-code) позволяет непрофессиональным разработчикам автоматизировать некоторые процессы, которые ранее выполнялись вручную.
По мнению старшего менеджера по продуктам Ansible Чада Фермана, «умение писать сценарии на встроенном языке вашей платформы (PowerShell для Windows или Bash для Linux) — это отличное начало» для формирования навыков ИТ-автоматизации.
Действительно, это хорошая отправная точка, при этом существует множество применимых для автоматизации языков, которые могут быть полезны в различных ситуациях. Ферман указывает на Python как на универсальный язык для все более сложной работы по автоматизации. Например, он стал основным в области науки о данных, но этот язык может применяться в широком спектре вариантов автоматизации. «Еще один важный навык — написание скриптов на Python для веб-скрейпинга, чтобы быстро собирать и систематизировать полезные данные», — говорит Николсон.
3. Контейнеры и Kubernetes
Kubernetes стал своего рода тяжелым якорем для флота облачных платформ и инструментов. Его внедрение и использование продолжает расти, поскольку (среди прочих причин) тенденция контейнеризации не ослабевает. По прогнозу Gartner, в 2022 г. около 75% мировых компаний будут использовать контейнерные приложения в производстве. Управление контейнерами в любом масштабе требует оркестровки, важной частью которой является автоматизация.
72% ИТ-лидеров, опрошенных в рамках исследования Red Hat «2021 Global Technology Outlook», заявили, что ожидают роста использования контейнеров. Это означает соответствующий спрос на квалифицированных специалистов по Kubernetes — а предложения пока просто нет. По словам Сиперсада, охота на ИТ-специалистов с навыками работы с Kubernetes идет ожесточенная, поскольку «нет никаких признаков замедления темпов внедрения Kubernetes — и вообще облачных решений».
4. Автоматизация тестирования
Автоматизация тестирования является огромной частью более широкого перехода к конвейерам CI/CD — конечно, эта аббревиатура означает непрерывную интеграцию и непрерывную доставку (или непрерывное развертывание), но с тем же успехом это можно назвать «непрерывной автоматизацией».
Майк Мейсон, руководитель технологического отдела Thoughtworks, говорит, что хотя его консалтинговая компания старается не зависеть от конкретных инструментов, автоматизация тестирования является важнейшей категорией. Без нее командам гораздо труднее обеспечить быструю и частую поставку — две цели, которые, похоже, пронизывают современный мир ПО.
«Навыки автоматизированного тестирования, будь то тестирование традиционно созданного ПО либо тестирование RPA или решений Low-code, очень важны, — говорит Мейсон. — Способность автоматически тестировать новые версии ПО является ключом к достижению непрерывной доставки и более быстрому внедрению ценностей в производство».
Автоматизация тестирования (как и в случаях интеграции, проверки на уязвимости и т. д.) является ключом к обеспечению качества и надежности без создания узких мест. Для применения этого принципа не обязательно иметь развитый конвейер CI/CD.
«Навыки автоматизированного тестирования также могут помочь выделить соискателей при приеме на работу», — говорит Персон, добавляя, что популярностью пользуются такие Open Source-инструменты, как Selenium и Cucumber.
Эта область навыков также пересекается с языками сценариев: если вы умеете писать собственные тесты, подчеркните это как значимый навык.
5. Автоматизация безопасности
«Безопасность будет оставаться приоритетом для технологических команд, а значит, все больше организаций будут искать сотрудников с опытом автоматизации безопасности», — говорит Персон.
Автоматизация безопасности — это отдельная обширная категория. Она может означать все: от автоматического сканирования безопасности во время выполнения программ до автоматического устранения инцидентов нижнего уровня, от отдельных процессов и цепочек инструментов до целых платформ для управления программами безопасности организации.
Индустрия безопасности изобилует аббревиатурами, но две из них, по словам Персон, в настоящее время выделяются на рынке труда с точки зрения опыта автоматизации: «Компании особенно ищут соискателей, имеющих опыт работы с инструментами SOAR (Security Orchestration, Automation and Response) и SIEM (Security Information and Event Management), которые могут помочь организовать данные, распознать угрозы и автоматизировать ответ на них».
6. Алгоритмическое мышление
Если вы опытный инженер в области машинного обучения, то вы уже разобрались с алгоритмами и работаете с ними. Инженеры-программисты в целом разбираются в логике и процессах «если-то». Однако по мере расширения сфер применения автоматизации, как считает Николсон, умение «мыслить алгоритмами» становится все более важным мягким навыком для все большего числа людей, включая нетехнических специалистов или ИТ-специалистов, чья работа не требует написания большого количества кода.
«Под этим я подразумеваю, что вам нужно думать как компьютер, маленькими, точными шагами проходя по дереву решений: если произойдет X, то должно произойти Y, — говорит он. — Инженеры-программисты зарабатывают этим на жизнь, но на это способны и другие инженеры, и это сделает их жизнь намного проще».
Действительно, это область развития навыков, которая может найти широкое применение во многих организациях, — у финансиста, который хочет использовать RPA для автоматизации повторяющейся рутинной работы, или у бизнес- или процессного аналитика, который хочет повысить свою ценность, научившись говорить на языке ИТ и, следовательно, стать лучшим переводчиком между бизнес- и техническими требованиями.
«Если вы хотите говорить компьютерам, что делать, вам нужно научиться думать так же, как они», — считает Николсон.
7. Коммуникабельность, открытость и честность
Автоматизация в отсутствие мягких качеств, таких как коммуникация, открытость и честность, скорее всего, приведет к проблемам.
Например, если руководство не может эффективно поделиться своей стратегией в целом (и тем, как автоматизация в нее вписывается), то может возникнуть страх потери работы и другие опасения по поводу автоматизации. И это может быть только началом гораздо более серьезных проблем.
В результате менеджеры по подбору персонала все чаще ищут людей, которые сочетают такие принципы и черты характера, как коммуникабельность или честность, с техническими знаниями и опытом. По аналогичным причинам эти характеристики также важны в сфере ИИ/МО, где такие проблемы, как предвзятость, могут иметь серьезные последствия.
«Одна из сложностей работы по автоматизации заключается в том, что это новая сфера для многих организаций, поэтому на протяжении всего процесса существует множество неизвестных, — говорит Персон. — Компаниям нужны сотрудники, которые будут открыто обсуждать любые трудности этих проектов».
Хотя ИТ-автоматизация не является чем-то новым, многие способы ее применения (и инструменты для этого) появились относительно недавно, поэтому «всезнайство», вероятно, отсутствует во многих списках востребованных навыков.
«Все изучают эти инструменты и процессы, поэтому эффективная коммуникация, не скрывающая информацию, будет иметь ключевое значение для решения проблем и обеспечения выполнения проектов», — говорит Персон.