Разделы портала

Онлайн-тренинги

.
Карьерный путь автоматизатора
25.06.2021 00:00

Автор: Энджи Джонс (Angie Jones)
Оригинал статьи
Перевод: Ольга Алифанова

Один из часто задаваемых вопросов – это "каков карьерный путь инженера-автоматизатора?". Отличный вопрос, так как эта роль часто воспринимается как тупиковая; менеджерам и специалистам сложно разобраться, как же в ней расти.

Ниже я расскажу, по каким ступенькам идут инженеры-автоматизаторы и инженеры в тестировании (SDET), и дам конкретные критерии, к чему стремиться, собираясь перейти на новый уровень.

Первый уровень: джуниор-автоматизатор

Джуниор-автоматизатор – это новичок в автоматизации тестирования. Возможно, у него уже есть навыки тестирования, но программирование для него – дело новое. Или же, возможно, у него есть ограниченные навыки программирования, а в тестировании он не разбирается.

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

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

Второй уровень: миддл-автоматизатор

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

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

Третий уровень: старший автоматизатор.

Старший автоматизатор отлично владеет и программированием, и тестированием. В дополнение к созданию автотестов он может создавать тест-проект с нуля.

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

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

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

Четвертый уровень: архитектор автоматизации

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

Архитекторы автоматизации хорошо владеют множеством инструментов автоматизации и могут оценить, нужен ли новый инструмент их команде.

Обычно они способны писать автотесты на любом уровне, включая юнит-, интеграцию, и end-to-end. Опытные архитекторы могут даже смешивать разные подходы и инструменты для оптимизации наборов тестов.

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

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

Пятый уровень: тимлид автоматизации

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

Как и архитекторы, лиды понимают, как автотесты встраиваются в общую картину разработки ПО, и часто применяют свои навыки к конструированию процессов CI/CD, оптимизации запуска тестов, и удостоверения, что тесты систематически дают быструю и надежную обратную связь.

Тимлиды автоматизации часто занимаются приращением своей армии инженеров, и отвечают за интервью и найм.

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

Шестой уровень: консультирующий автоматизатор

Автоматизаторов-консультантов часто нанимают ради их способности внедрить успешную стратегию тест-автоматизации. В ряде случаев они также создают изначальный тест-проект и несколько тестов для подтверждения работоспособности – эти тесты команда будет использовать и расширять.

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

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

Лучшие консультанты не только делятся техническим опытом, но и помогают взрастить культуру, поддерживающую усилия по тест-автоматизации.

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

Обсудить в форуме