Software Engineer in Test. Simply and Honestly. Part 1

Software Engineer in Test. Simply and Honestly. Part 1

Victor Grigoriev


Продолжаем цикл статей о новых дисциплинах в тестировании.  

20 ноября 2020 года в формате интервью прошел онлайн-ивент TAD Community, посвященный новой дисциплине в автоматизации тестирования «Software Engineer in Test. Simply and Honestly». Михаил Боярин, Lead Software Engineer in Test, и Александр Можар, EPAM SET Discipline Head/Software Testing Manager, рассказали главное о набирающей обороты дисциплине: отличительные черты и преимущества, необходимые навыки и возможности роста. 

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

В первой части читайте о том, кто такой Software Engineer in Test (SET). Какие задачи и роли SET выполняет на проекте, различия между уровнями Middle, Senior и Lead SET. Также вы узнаете, как появилась новая дисциплина, и получите ответ на вопрос: являются ли SET инженеры улучшенными автоматизаторами?  


Кто такой Software Engineer in Test?

Александр Можар

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

Если просуммировать сказанное, то SET – это инженер, который обладает навыками трех дисциплин: автоматизация тестирования, девелопмент и DevOps.» 

Михаил Боярин

 «SET специалист – это разработчик, для которого тестирование является доменом, которым он владеет. Также он, как DevOps, может с точки зрения тестирования налаживать CI\CD процесс и заниматься постановкой continuous testing.» 

 

Можете привести примеры задач SET специалиста, связанных с девелопментом и DevOps?

Михаил: «На некоторых проектах есть много автоматизации тестирования. На таких проектах также много групп, которые занимаются автоматизацией тестирования. При этом выделяют core team, которая занимается разработкой архитектуры, фреймворка, тулов для автоматизации тестирования, организацией CI\CD процесса и встраиванием в него автоматизации. Остальные группы пользуются этим продуктом как сервисом. На таких проектах SET является частью core team, которая берет на себя разработку и налаживание процессов. 

Можно привести следующие примеры задач по разработке для SET специалистов: 

  • Разработка инструментов для генерации и работы с тестовыми данными, настройка репозиториев для их хранения; 
  • Создание решений для тест-репортинга, синхронизации результатов тестирования и тест-менеджмент систем; 
  • Разработка новых продуктов для тестирования областей, для которых не существует готовых фреймворков.  

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

 

Занимается ли SET рутинными задачами?

Александр: «SET – T-SHAPED специалист, который занимается решением технически сложных задач: построением CI\CD пайплайнов, разработкой архитектуры тест фреймворка, разработкой утилит. Не очень рационально использовать SET специалиста для написания тест кейсов, поскольку он может принести больше пользы, решая сложные задачи.» 

 

Как между собой отличаются Middle, Senior и Lead SET?

Александр: «Здесь применяется классический подход, учитывается опыт специалиста. На каждом уровне предусмотрены различные требования по трем компонентам: автоматизация, DevOps, девелопмент. На Middle уровне – это просто специалист, на Senior – ключевой специалист, который может управлять небольшой командой инженеров. На Lead уровне – это ключевой специалист, который может руководить и отвечать за построение процессов на проекте. Lead SET может играть роль тест лида на проекте, если у человека для этого есть способности и желание. » 

 

Как появилась новая дисциплина?

Александр: «SET специалисты появились намного раньше создания дисциплины. В последние годы заказчики хотят работать с универсальными техническими специалистами, которые могут закрывать несколько позиций. Поэтому и стали думать о создании отдельной дисциплины. У нас есть устойчивый спрос на такого рода специалистов, о чем свидетельствует постоянно высокий уровень количества открытых позиций. Также мы заказывали исследование у Gartner касательно того, какие тенденции будут на рынке на протяжении следующих лет. Исследование подтвердило, что будет возрастать роль DevOps в автоматизации тестирования. Это еще раз подтвердило востребованность дисциплины SET.» 

 

Можно ли рассматривать SET инженеров как улучшенных автоматизаторов?

Александр: «SET – это скорее автоматизаторы с более широким кругозором, обладающие экспертизой в DevOps и девелопменте. Это отражает последние тенденции на рынке, когда все идет к гибридизации, когда заказчики хотят, чтобы ручной тестировщик умел автоматизировать или понимал, что такое автоматизация. Аналогичные тренды пришли и в автоматизацию: необходимы знание и понимание DevOps составляющей, поскольку автоматизация без CI\CD выглядит уже неполноценной.» 

 

Полная запись ивента доступна на YouTube канале TAD Community

Report Page