Кто отвечал за контроль качества и тестирование
Что проверяют
Вопрос про ваш прошлый проект, и интервьюера интересует не название отдела, а ваше личное участие в качестве: пишете ли вы тесты сами или считаете это работой тестировщиков. Следом спрашивают, какие тесты вы писали и что ловил CI.
Как отвечать
Опишите, как качество было устроено у вас, по слоям, и отметьте свою долю в каждом:
- юнит-тесты: кто писал и на чём. Для Python это обычно
pytestс фикстурами и параметризацией, моки черезunittest.mockилиpytest-mock; - интеграционные тесты: проверки с настоящей базой и брокером, например через testcontainers, или тесты API через клиент фреймворка (
TestClientв FastAPI, тестовый клиент в Django); - статический анализ:
ruffдля линтинга и форматирования,mypyили другой тайпчекер, хукиpre-commit; - CI: GitHub Actions, GitLab CI или Jenkins, где упавшие тесты и линтеры блокируют слияние ветки;
- ревью кода: сколько одобрений нужно и на что смотрели;
- QA-инженеры: были ли они, что проверяли вручную, кто писал end-to-end тесты;
- после релиза: Sentry, метрики, алерты.
Сильный ответ звучит примерно так: «Юнит- и интеграционные тесты писали сами разработчики, без них задача не проходила ревью; QA проверял сценарии целиком и вёл регресс перед релизом». Добавьте свои цифры, если они честные: покрытие ключевого модуля, сколько длился прогон в CI, какой класс багов перестал доезжать до прода.
Если отдельного контроля качества не было, так и скажите и объясните, что делали вы: написали первые тесты к критичному коду, добавили прогон в CI. Это ценнее, чем выдуманная стройная система.
Где спотыкаются
Отвечают «за качество отвечал QA-отдел». Для разработчика это звучит как отказ от ответственности за свой код.
Приводят красивые проценты вроде «ошибок стало на 30% меньше», но не могут сказать, как это считали. Лучше без процентов, чем с придуманными.
Путают процент покрытия с качеством. Сто процентов строк без проверок граничных случаев ничего не гарантируют, и интервьюер это знает.