Профессия QA Engineer в IT
IT-сфера с каждым днем расширяется, появляются новые направления и профессии. Чтобы оставаться в теме и узнавать все детали первым, читай рубрику от Kharkiv IT Cluster «Профессии в IT».
Усовершенствование продукта становится одним из главных и важных аспектов в работе бизнеса. Преуспевать компаниями помогают специалисты по контролю качества. Они отличаются стеками, подходами, но цель одна — проверять и обеспечивать стандарты продукта.
Ольга Безменова, Business Analyst в Cloud Works, компании-участника Кластера, поделилась с нами взглядом на профессию QA.
Расскажите коротко о профессии QA.
С одной стороны, есть ощущение, что профессия QA Engineer достаточно понятна и проста для входа в IT. Но с другой стороны, на рынке технологических вакансий с этой профессией связано много разноречий. На мой взгляд, это объясняется двумя принципиальными моментами.
Первый: многое зависит от бизнес-формата IT-компании. Например, описание требований к позиции QA Engineer в аутсорсинговых компаниях будет отличаться от вакансии с таким же названием, но в продуктовых компаниях.
Второй: на принципы и подходы к процессу тестирования сильно влияет конечный продукт. Тестирование сайта, мобильного приложения, десктопного решения или большой разветвленной платформы, как наш продукт Teamwork Commerce.
Тестировщик, QA, QC или QA/QC?
Кто такой Quality Assurance Engineer в IT?
QA (англ. Quality Assurance) — это процесс обеспечения качества, и, соответственно, QA-engineer — это специалист, обеспечивающий качество программного обеспечения (ПО).
Часто считается, что QA-инженер и тестировщик ПО — это одно и то же, но такое мнение ошибочно. Чтобы понять разницу, стоит выделить три процесса:
- тестирование;
- Quality Control (QC, контроль качества);
- Quality Assurance.
Тестировщик ПО занимается тестированием готового ПО, в то время как функциональность Quality Assurance направлена на превентивные (предупредительные) меры по улучшению качества продукта.
Quality Control, в свою очередь, включает в себя:
- анализ требований;
- подготовка тестовой документации;
- проверка соответствия функциональности требованиям;
- соответствие заявленному уровню качества.
В Quality Assurance процессе можно выделить следующее:
- охватывает все этапы разработки;
- включает в себя QC (Quality Control);
- занимается оценкой рисков;
- анализирует результаты тестирования;
- планирует задачи для улучшения качества продуктов.
Получается, что Quality Assurance включает в себя Quality Control, который в свою очередь включает в себя тестирование ПО.
Схематично можно изобразить так:
На рынке вакансий же чаще встречается именно позиции QA. Почему?
Потому что в IT-индустрии роли QA-специалиста и тестировщика не разделяют. Зачастую обязанности QA-инженера включают в себя как работу по обеспечению качества, так и контроль качества и тестирование конечного продукта. При этом в обязанности Junior QA-инженера может входить только тестирование ПО, а Senior QA-инженер будет отвечать в том числе и за и QA, и за QC.
Какие субспециалисты есть в этой профессии и чем они отличаются
Есть несколько классификаций процесса тестирования. Начнем со степени автоматизации. В этой типологии тестирование бывает:
- manual (мануальное, ручное). Понятно из названия, что весь процесс происходит вручную, без использования дополнительного программного обеспечения. В народе считается, что этот вид тестирования более легкий, но это зависит от продукта;
- automation (автоматическое). Многие процессы автоматизированы. Здесь инженеру QA необходимо разбираться в навыках программирования.
Каждый подход имеет свои преимущества и недостатки.
С точки зрения функций программного продукта, тестирование бывает:
- функциональным — оценивает то, ЧТО работает в продукте;
- нефункциональным — оценивает то, КАК работает продукт. Например, тестирование производительности ПО под определенной нагрузкой или тестирование UX на корректную логику использования. И таких параметров может быть много.
Какие качества и навыки нужны специалисту QA?
Здесь все сильно зависит от бизнес-формата компании и сложности продукта. Давайте я расскажу, как принято в нашей компании.
Необходимые навыки:
- техническое образование
- знание теории тестирования;
- знание основ программирования;
- базовые навыки работы с SQL;
- английский язык.
В зависимости от проекта, могут быть и другие требования, но данный список — это основные общие требования в компании Cloud Works.
Конечно, если компания работает не на иностранного заказчика, то английский язык может отсутствовать в требованиях к QA-специалисту. Но большая часть компаний все же работает с иностранными клиентами и ведет документацию на английском языке, поэтому, как минимум, Pre-Intermediate уровень английского — это важно.
Необходимые качества:
- аккуратность;
- аналитическое мышление;
- внимательность к деталям;
- умение работать в команде;
- обучаемость;
- инициативность;
- готовность задавать вопросы.
Какое образование понадобится кандидату?
Я буду говорить, опираясь на наш продукт Teamwork Commerce. Для позиции QA Engineer в компании Cloud Works крайне важно базовое техническое образование. Конечно, могут быть и есть исключения. Но если говорить о начальных требованиях, то это технический ВУЗ. У соискателя позиции должно быть четкое понимание фундамента программирования, глубокое знание математики, умение работать с базами данных и большими массивами информации, знание базовых языков программирования.
На что стоит обратить внимание новичку, который хочет развиваться в этой специальности. Советы от специалиста
- если вы выпускник/выпускница технического ВУЗа, то стоит начать с выбора компании, которая вам подходит. Вы сейчас правильно прочитали: которая вам подходит. Хотите попробовать себя в разных стеках, на разных проектах и продуктах — начинайте карьеру в аутсорсинговых компаниях. Хотите развиваться вглубь одного направления и есть амбиции вырасти в бизнес-аналитика или проджект-менеджера — рассматривайте продуктовые компании;
- если вы выпускник/выпускница IT-курсов, то осмотритесь на предмет того, какие вакансии соответствуют специализации ваших курсов. Обращайте внимание на то, кого именно ищут компании: начинающего (Junior) или с опытом (Middle, Senior). Постарайтесь иметь несколько рабочих проектов в портфолио;
- если вы новичок, который/которая уже стали частью команды, то найдите себе ментора внутри компании. Не бойтесь задавать «глупые» вопросы, читайте техническую документацию, будьте инициативны и открыты.
Какие есть направления профессионального развития для QA-специалиста?
- автоматизированное тестирование;
- QA Lead;
- бизнес-аналитик;
- менеджер проекта;
- разработчик.
Завершить наш рассказ можно цитатой технического директора Cloud Works, Артема Никульченко:
Есть в народе такая установка: «Я лучше буду плохим программистом, чем хорошим QA». Но вот что, зарабатывать в этом стеке можно не меньше, чем в программировании, а иногда даже больше. При условии, если вы хороший QA. Кроме того, QA — это хорошая ступенька для роста в бизнес-анализе, проджект-менеджменте.
Используя разные сайты и приложения, мы едва задумываемся о том, кто проверяет качество и улучшает эти продукты для нас. В статье Ольга показала нам закулисье востребованной и интересной профессии.
Это была одна из технических профессий в IT, пиши комментарии, о какой профессии хочешь узнать больше в следующем посте.
А также подписывайся на Kharkiv IT Cluster в соцсетях, чтобы не пропустить самое интересное!
Подпишись на наш телеграмм канал, чтобы быть в курсе событий.
Также читай новости на наших страницах в социальных сетях: