Почему для agile-тестирования нужен именно T-shaped QA?
Привет! Я Илья Рыбаков, руководитель QA-отдела в компании «Вебпрактик». Хочу поделиться нашим видением эффективного QA-инженера в разработке и рассказать, для чего мы обучаем сотрудников по модели T-shaped, совмещая глубокую экспертизу в тестировании и развитие скилов в смежных сферах. Подробно объясню, как мы к этому пришли и какие результаты получили.
Какая была проблема
Хочешь легко войти в айти, иди в тестировщики — распространенный стереотип. И мы столкнулись с ним на практике, когда несколько лет назад начали формировать отдел QA. К нам приходили люди с совершенно разным опытом: выпускники профильных вузов, базовых курсов по тестированию, среди которых были даже врачи и юристы, мечтающие построить карьеру в ИТ. Кто-то смог успешно влиться в команду разработки, почувствовать свой вклад в общее дело, меньше зависеть от действий коллег при выполнении своих задач. А у кого-то это получалось меньше или вообще никак.
Хотя эта ситуация довольно распространенная, важно проанализировать происходящее, чтобы извлечь уроки и увеличить эффективность процесса разработки.
Итак, с одной стороны у нас agile-разработка со свойственной ей спецификой:
- Самоорганизация команды
- Изменчивость требований
- Ориентация на потребности бизнеса
- Высокая частота релизов и короткие сроки
- Эффективность коммуникаций
- Необходимость автоматизации процессов доставки ПО и непрерывного контроля качества
С другой стороны, на рынке засилье узкопрофильных QA:
- Автоматизаторы фронтенда
- Автоматизаторы бэкенда
- Ручные тестировщики
- Performance QA
- Security QA
- Fullstack QA (за этими единорогами очередь еще до их рождения)
Конечно, без узкопрофильных специалистов не обойтись и для многих компаний это классика. Но тут есть несколько нюансов: нужно больше людей, усложняются процессы менеджмента всей команды разработки и замедляется внутрикомандная коммуникация. Это не наш путь!
Проведем экспресс-опрос.Попробуйте ответить на следующие вопросы:
1. Есть ли у вас в команде по одному QA каждого профиля?
2. Достаточно ли эффективно работает QA на проекте?
3. В команде отсутствуют конфликты между смежными ролями?
4. Удовлетворены ли сами QA результатами своей работы?
5. Всегда ли команда понимает, что делает QA и устраивает ли результат?
Если на все вопросы вы ответили «да», я вам искренне завидую. Если нет, давайте поищем решение.
Разберем на примерах
Проанализировав детально наши внутренние кейсы, заметил вполне четкие закономерности. Вот некоторые из них:
- QA специалисты эффективнее локализуют баги, если обладают знаниями устройства http-протокола, особенностями рендеринга страниц в браузере, знаниями о клиент-серверном взаимодействии, SQL и т.д..
- АТ QA со знаниями внутреннего устройства фронта могут разработать более эффективные Page Object и встроить data-test-id атрибуты для требуемых UI элементов.
- QA даже с начальными знаниями языков программирования проще взаимодействует с техническими спецами в команде. А также имеют в кармане швейцарский нож для решения многих прикладных задач. Например, генерация тестовых данных.
- Знания методологий разработки помогает QA настроить таск-трекер, баг-трекер или подсветить проект-менеджеру недостатки текущего процесса. Что приводит к повышению производственного качества и предотвращению появления багов.
- QA со знанием основ React может построить эффективную многоуровневую модель тестирования и осознанно делегировать часть проверок на юнит-уровень.
- АТ QA со знаниями GitLab CI способен построить QulityGate без помощи девопса.
- QA с основами бизнес-аналитики способен предложить более оптимальную форму изложения требований для коллег из отдела аналитики. Это сокращает время на уточнение деталей. А ведь едва ли QA может спать спокойно, если у него остались вопросы🙂
Успешными и эффективными оказались те QA-инженеры, которые развивались в смежных областях помимо основной и применяли на проектах эти знания.
T-shaped QA — это кто?
В общем понимании, T-shaped — это специалист обладающий глубокими знаниями в одной области и базовыми знаниями в широком многообразии смежных областей.
Мы адаптировали общий T-shaped профиль для QA специалистов, после чего у нас получилась модель компетенций включающая 3 варианта профиля.
QA-специалист должен обладать глубокими знаниями в одном из трех направлений (вертикальная часть «Т»):
- автоматизации тестирования UI
- тестировании производительности и API
- функциональное тестирование и организация QA процесса
При этом глубина знаний предусматривает ряд общих компетенций, таких как ЯП для автоматизатора и тестировщика производительности или базовая глубокая теория тестирования для всех трех направлений.
Также QA должны иметь общее понимание других областей разработки ПО (горизонтальная часть «Т»). Это методология разработки, формирование требований, особенности архитектуры и применяемые технологии.
Мы стараемся наблюдать за общими трендами в разработке, и видим четкий вектор на все большее сближение QA и разработчика с целью формирования высокоэффективных самоорганизующихся команд.
Кстати, известный многим создатель Allure Testops в своем недавнем докладе подсветил причины подобной динамики. Но на наш взгляд, нельзя забывать про производственное качество и процессы. Ведь предотвратить баг всегда дешевле, чем исправить.
Профессиональное развитие по T-shaped модели позволяет QA-инженерам вносить ценный вклад на всех этапах разработки и обеспечивать комплексный подход к качеству продукта.
Как мы формировали T-shaped профиль для QA
На рынке мало специалистов с подобным навыками, поэтому логичным решением стала прокачка T-shaped профиля тестировщика внутри компании.
Мы начали строить свою модель обучения для QA и «зашили» в нее теорию тестирования и тест-дизайн, общие технические знания, инструменты, автоматизацию и ЯП, процессы разработки и многое другое. Кроме того, сформировали прозрачную систему грейдов и скилов для QA и условились ее поддерживать, следуя за трендами в технологиях и инструментах.
Свой опыт развития сотрудников, который мы накопили внутри «Вебпрактик», обобщили и запаковали в собственный продукт SkillsTeam. За три года внутренней апробации система управления грейдами прошла испытание огнем, водой и медными трубами.
Система грейдов получилась довольно удобная, с общими стандартами для всех сотрудников компании. Нам важно было в динамике следить за несколькими параметрами:
- как конкретный сотрудник растет, наращивая отдельные компетенции
- сколько ему осталось до следующего уровня
- сколько людей на каком этапе находится — видеть общий срез по команде
Развиваясь в рамках принятой модели, QA-специалисты всех видов и грейдов получают следующие преимущества:
- Расширение зоны «понятности» тестируемого приложения. А ведь любая «непонятность» — источник пробелов в тестовом покрытии.
- Увеличение скорости и избирательности тестирования. Ох уж эти дедлайны )
- Формирование более ясной цели и мотивации для ее достижения.
- Повышение эффективности shift-left подходов.
- Защиту от выгорания.
- Широту технических подходов к тестированию.
Наш подход в построении QA-команды в «Вебпрактик» и ее развитии по T-shaped модели показал себя с положительной стороны. Да, он оказался многоступенчатым и трудозатратным, но в итоге мы сформировали четкое понимание, куда мы движемся.
Всем ли agile-командам нужны T-Shaped QA?
Если коротко, скорее, да. Спрос на технически прокаченных и разносторонних QA-инженеров растет. Kuber, Docker, Redis, Kafka, SQL для QA — уже норма. Спецы, пишущие автотесты на Typescript, уже не вызывают удивления. И эффективность T-shaped QA обычно выше, а им самим работать интереснее несмотря на то, что поначалу бывает сложно и больно.
Подходит ли такой профиль для всех QA? Думаю, не для всех. На QA курсах кому-то до сих пор обещают легкий способ войти в IT, а выходец такого курса совсем не хочет никуда «тишейпиться». А кто-то посредине QA-пути понял, что тяготеет больше к менеджменту, а не к инженерии. Но умения добывать, систематизировать и применять новые знания всегда будут в тренде. Так почему бы не прокачивать эти навыки уже сейчас!
очень крутая статья))) спасибо
Передадим ваш отзыв автору. Он старался)