diff --git a/QA-profile.md b/QA-profile.md index a4c6a57..c7372b4 100644 --- a/QA-profile.md +++ b/QA-profile.md @@ -7,63 +7,63 @@ Сейчас в Авито существуют такие уровни QA-инженеров: -– [Е1.](https://github.com/avito-tech/playbook/new/master#E1) -– [Е2.](https://github.com/avito-tech/playbook/new/master#E2) -– [Е3.](https://github.com/avito-tech/playbook/new/master#E3) -– [Е4.](https://github.com/avito-tech/playbook/new/master#E4) -– [Е5.](https://github.com/avito-tech/playbook/new/master#E5) -– [Е6.](https://github.com/avito-tech/playbook/new/master#E6) +- [Е1.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E1) +- [Е2.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E2) +- [Е3.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E3) +- [Е4.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E4) +- [Е5.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E5) +- [Е6.](https://github.com/avito-tech/playbook/edit/master/QA-profile.md#E6) Двигаться ли по карьерной лестнице — это решение самого сотрудника. Многое зависит от его проактивности и желания учиться. Задача менеджера — помочь специалисту в развитии. Например, подключать к новым задачам, давать возможность для участия в кросс-функциональных проектах. ## Как работают профили -– Ожидания каждого следующего уровня добавляются к ожиданиям предыдущих. Например, E4-инженер должен уметь делать всё то же самое, что E1, E2 и E3. -– Сотрудник должен проявить навыки и компетенции своего или следующего профиля на деле. Просто уметь или хотеть делать недостаточно. -– Если менеджер считает, что специалисту в команде не нужен какой-то навык, то его можно не учитывать. +- Ожидания каждого следующего уровня добавляются к ожиданиям предыдущих. Например, E4-инженер должен уметь делать всё то же самое, что E1, E2 и E3. +- Сотрудник должен проявить навыки и компетенции своего или следующего профиля на деле. Просто уметь или хотеть делать недостаточно. +- Если менеджер считает, что специалисту в команде не нужен какой-то навык, то его можно не учитывать. ### Е1 -– Тестирует отдельные задачи ad hoc, то есть без подготовки тестовой документации и без ожидаемого результата. -– Пишет чек-листы и тест-кейсы на позитивные и негативные сценарии. -– Перепроверяет закрытые баги и пишет понятные баг-репорты. +- Тестирует отдельные задачи ad hoc, то есть без подготовки тестовой документации и без ожидаемого результата. +- Пишет чек-листы и тест-кейсы на позитивные и негативные сценарии. +- Перепроверяет закрытые баги и пишет понятные баг-репорты. ### Е2 -– Составляет тестовые модели для части функциональности продукта. -– Может в любой момент рассказать о качестве фич, с которыми работает. -– Разрабатывает и поддерживает тест-кейсы и интеграционные и е2е-автотесты. -– Применяет основные техники тест-дизайна, например классы эквивалентности. -– Следит за полнотой покрытия тестами, например учитывает негативные сценарии, граничные значения, проверяет все возможные ветви бизнес-процессов. - –Разбирает отчёты автотестов, перепроверяет ошибки. -– Использует подход risk-based testing или другую методологию, чтобы оценить риски по задачам. +- Составляет тестовые модели для части функциональности продукта. +- Может в любой момент рассказать о качестве фич, с которыми работает. +- Разрабатывает и поддерживает тест-кейсы и интеграционные и е2е-автотесты. +- Применяет основные техники тест-дизайна, например классы эквивалентности. +- Следит за полнотой покрытия тестами, например учитывает негативные сценарии, граничные значения, проверяет все возможные ветви бизнес-процессов. +- Разбирает отчёты автотестов, перепроверяет ошибки. +- Использует подход risk-based testing или другую методологию, чтобы оценить риски по задачам. ### Е3 -– Владеет тестовой моделью всей функциональности продукта, следит, чтобы покрытие кода было полным. -– Тестирует продукт на разных уровнях, например UI и API. -– Разрабатывает, поддерживает и улучшает интеграционные, компонентные, е2е-автотесты. -– Применяет шаблон проектирования PageObjects. -– Следит, чтобы команда придерживалась пирамиды тестирования. -– Составляет тест-кейсы и обсуждает с разработчиками, как автоматизация распределена по пирамиде тестирования. -– Ведёт процессы SPT/ZBP в команде, обеспечивает SLO для решения проблем пользователей и багов. -– Вместе с владельцем продукта составляет критерии приёмки по процессу ATDD. -– Отслеживает достижение baseline по team maturity model в QA-секции. -– Обучает коллег по команде лучшим практикам тестирования. +- Владеет тестовой моделью всей функциональности продукта, следит, чтобы покрытие кода было полным. +- Тестирует продукт на разных уровнях, например UI и API. +- Разрабатывает, поддерживает и улучшает интеграционные, компонентные, е2е-автотесты. +- Применяет шаблон проектирования PageObjects. +- Следит, чтобы команда придерживалась пирамиды тестирования. +- Составляет тест-кейсы и обсуждает с разработчиками, как автоматизация распределена по пирамиде тестирования. +- Ведёт процессы SPT/ZBP в команде, обеспечивает SLO для решения проблем пользователей и багов. +- Вместе с владельцем продукта составляет критерии приёмки по процессу ATDD. +- Отслеживает достижение baseline по team maturity model в QA-секции. +- Обучает коллег по команде лучшим практикам тестирования. ### Е4 -– В любой момент может рассказать команде о качестве всех фич и продукта в целом. -– Фокусирует команду на улучшении качества продукта. -– Разрабатывает тесты на backend и client-side, чтобы обеспечивать покрытие на всех уровнях системы. -– Прорабатывает юнит-тесты вместе с разработчиками. -– Проверяет качество покрытия юнит-тестами через код-ревью или с помощью мутационного тестирования. -– Исследует проблемы flaky-тестов и самостоятельно устраняет причины. -– Меняет процессы, если видит баги от команды. +- В любой момент может рассказать команде о качестве всех фич и продукта в целом. +- Фокусирует команду на улучшении качества продукта. +- Разрабатывает тесты на backend и client-side, чтобы обеспечивать покрытие на всех уровнях системы. +- Прорабатывает юнит-тесты вместе с разработчиками. +- Проверяет качество покрытия юнит-тестами через код-ревью или с помощью мутационного тестирования. +- Исследует проблемы flaky-тестов и самостоятельно устраняет причины. +- Меняет процессы, если видит баги от команды. ### Е5 -– В любой момент может показать качество продукта с помощью объективных метрик. -– Оценивает риски в больших проектах. Объясняет, что, где и почему может пойти не так. -– Разрабатывает автотесты больше чем на трёх разных платформах. -– Может настроить тестовый контур для интеграционного тестирования фич в юните и добавить дополнительные Quality Gates в CI/CD команды. -– Улучшает инструменты тестирования в команде и экосистеме тестирования Авито. -– Проводит нефункциональные тесты, например performance и security, привлекает для этого экспертов. +- В любой момент может показать качество продукта с помощью объективных метрик. +- Оценивает риски в больших проектах. Объясняет, что, где и почему может пойти не так. +- Разрабатывает автотесты больше чем на трёх разных платформах. +- Может настроить тестовый контур для интеграционного тестирования фич в юните и добавить дополнительные Quality Gates в CI/CD команды. +- Улучшает инструменты тестирования в команде и экосистеме тестирования Авито. +- Проводит нефункциональные тесты, например performance и security, привлекает для этого экспертов. ### Е6 -– Создаёт новые инструменты для обеспечения качества. Например, фреймворк для интеграционного тестирования автозагрузки или скрипты сравнения диффов в системе управления метаданными Авито. -– Проводит исследования, чтобы оценить качество продукта в целом. Например, проверяет гипотезы качества на пользователях. Проводит сравнительное тестирование с продуктами конкурентов. +- Создаёт новые инструменты для обеспечения качества. Например, фреймворк для интеграционного тестирования автозагрузки или скрипты сравнения диффов в системе управления метаданными Авито. +- Проводит исследования, чтобы оценить качество продукта в целом. Например, проверяет гипотезы качества на пользователях. Проводит сравнительное тестирование с продуктами конкурентов.