Я недавно латала дыры в понимании разницы между Quality Assuarance и Quality Control. Статей на эту тему много, я накидала свой вариант, хотелось по существу. Делюсь с вами. Enjoy, если актуально!
Кто такой QС Engineer
Контроль качества (QC) - часть международного стандарта управления качеством ISO 9000. Суть контроля качества сводится к поиску дефектов и ошибок после создания продукта.
Таким образом, специалист, чья работа крутится вокруг тестирования - это QC Engineer, по-русски, тестировщик.
Должностные обязанности QC Engineer
Примерный обобщенный список:
Оценка и внедрение программного обеспечения для тестирования.
Проверка продукта на соответствие установленным требованиям и ожиданиям.
Настройка автоматического тестирования.
Поиск дефектов или ошибок, которые могут подорвать доверие покупателей к вашим продуктам.
Проверка, что конечный продукт соответствует стандартам компании, стандартам отрасли, законам.
Составление отчетов об испытаниях и проверках.
Выявление и документирование ошибок и дефектов, которые необходимо исправить перед выпуском продукта.
Выявление и документирование ошибок и дефектов, которые можно исправить после отправки продукта.
Тестирование инструкций, гайдов, документации.
Работа со специалистами по обеспечению качества.
Оценка отзывов и жалоб клиентов -- поиск и рекомендации решений, которые “сделают их счастливыми”.
Мониторинг поступления на рынок только высококачественной продукции.
Кто такой QA Engineer
Обеспечение качества (QA) - часть международного стандарта управления качеством ISO 9000, которая помогает компаниям соответствовать требованиям, удовлетворять потребностям клиентов и постоянно улучшать свои процессы и процедуры.
Должностные обязанности QA Engineer
Примерный обобщенный список:
Планирование, разработка и внедрение политики, процессов и процедуры обеспечения качества.
Документирование и обновление типовых инструкций и лучших решений (best practices).
Проверка процессов, процедур и документации на соответствие правилам и стандартам.
Мониторинг текущих процессами с целью их улучшения.
Обучение производственных и инженерных групп соблюдению установленных процессов и процедур.
Анализ первопричин и внедрение решений, направленных на устранение проблем, обнаруженных в текущих процессах и процедурах.
Сбор и оценка отзывы клиентов.
ВАЖНО. Даже если в компании есть четко определенная позиция QA Engineer, обеспечивать качественный процесс, создавать качественный продукт остается обязанностью каждого участника команды.
В общем, QA Engineer, если такой есть на проекте, человек, который прицельно отследит и поможет подтянуть проседающий процесс разработки: направит, надоумит, отправит учиться или подкинет инструментов и идей.
Разница между QA и QC
Кто такой Software Engineer in Test
На моей текущей работе недавно сменился босс и он регламентировал, что QA - полностью обязанность каждого сотрудника, а я для них Software Engineer in Test.
При ближайшем рассмотрении Software Engineer in Test у меня получилось, что это тоже QC Engineer с одной лишь разницей, что фокус его обязанностей в автоматизации тестирования и включает и разработку собственного фреймворка/инструмента, и написание автотестов:
Создание/расширение фреймворка для тестирования.
Разработка вспомогательных утилит для тестирования сервисов.
Настройка и поддержка тестового окружения.
Настройка автоматизированных тестов для надежного и эффективного выполнения в средах CI / CD.
Обеспечение оптимального покрытия автотестами на всех уровнях.
Автоматизация отчетности.
и т.п.
Обязанности второго плана по сути копируют список QC Engineer.
Заключение
Итак, в любой компании есть Quality assuarance - это обязанность каждого сотрудника работать на высокое качество, но может присутствовать QA Engineer, который держит улучшение процесса разработки в постоянном фокусе.
И есть Quality Control. В центре QC - различные виды тестирования и все, что с этим связано, поэтому это зона ответственности Тестировщика, QC Engineer и Software Engineer in Test.
Полезно выяснить какой же у вас все-таки список должностных обязанностей и кого в вас видит руководство. Распространено, что руководство не различает некоторые понятия, и чаще всего ожидается, что вы два в одном QA + QC Engineer, либо в вас видят только QC Engineer.
Но кем бы вы ни были совместным итогом поступательных шагов в QA и QC всегда будут:
высококачественный продукт на выходе
приятный процесс работы и профессионализм
доверие и приверженность клиентов
отсутствие серьезных дефектов в продукте
оптимизация ресурсов и снижение затрат
Удачи!
conopus
Я бы уложил в два определения:
QC — ищет, описывает и воспроизводит дефекты
QA — еще и работает над снижением риска появления дефектов
Насчет Software Engineer in Test: поиск на HH.ru дает ровно одну такую вакансию. Гораздо чаще встречается Software Development Engineer in Test и там все очевидно из названия: это разработчик, предметная область которого — тестирование.
Qualsolife Автор
Спасибо за мысли на тему :) На сколько я знаю, Software Engineer in Test — это формулировка типичная для google. Я работаю удаленно в распределенной команде, и весь наш менеджмент — это англичане, возможно, им привычнее такой вариант. Спасибо за отсылку на hh и полезный комментарии про Software Development Engineer in Test. Думаю, это одно и то же.
lxsmkv
В моем понимании разделение такое:
SET - может писать автоматизацию данными ему средставами (программист узкой направленности).
SDET - может сам написать средства автоматизации (разработчик программных систем и комплексов узкой направленности*)
* -- т.е. сами комплексы и системы узконаправленные, а разработчик - полноценный.).
Т.е. разница как небо и земля.
Qualsolife Автор
Интересно. Это интуитивное понимание или вы встречали такие определения в какой-то литературе?
lxsmkv
Скорее интуитивные. Ну и из каких-то вакансий, что мне попадались.
conopus
Я бы согласился, но кто такой тогда QA Automation Engineer? Как мне кажется, ваше первое определение как раз про эту должность.