JavaRush /Блог /QA Automation /Есть такая профессия — ПО проверять. Как стать QA Enginee...

Есть такая профессия — ПО проверять. Как стать QA Engineer

Статья из группы QA Automation
Продолжая серию материалов о профессиях, востребованных в ИТ-индустрии и связанных с разработкой ПО, сегодня поговорим о QA-инженерах. Есть такая профессия — ПО проверять. Как стать QA Engineer - 1Итак, Quality Assurance Engineer: кто это такой, чем занимается, в каких местах обитает? Сначала немного базовой информации. Основная обязанность QA Engineer, то есть инженера по обеспечению качества программного обеспечения, — следить за каждым этапом процесса разработки ПО, чтобы итоговый продукт соответствовал всем высочайшим стандартам компании-разработчика, ну или хотя бы просто более-менее прилично функционировал, не доводя юзеров до белого каления багами и недоработками. Задача QA-инженера, если говорить в общем о функции данного специалиста в составе команды разработчиков ПО, состоит в том, чтобы следить за качеством подхода к девелопменту. Также на QA-щика ложится задача убедиться, что программный продукт работает должным образом до того, как его выпустят и он станет доступен широким массам пользователей. Таким образом, QA-инженер участвует во всех этапах разработки ПО: от написания исходного кода до тестирования и управления релизами, и даже оказывает на них непосредственное влияние.

QA Engineer как карьера — перспективы и ожидания

С точки зрения исключительно перспектив трудоустройства, QA точно можно считать весьма и весьма перспективной профессией и как минимум неплохим выбором для карьеры в ИТ. Ожидается, что количество позиций для специалистов в этой области будет увеличиваться примерно на 4-5% в течение следующих нескольких лет. Согласно данным ряда исследований трудоустройства в ИТ-сфере, профессия QA Engineer в последние годы находится в лидерах по разрыву между количеством открытых позиций и числу специалистов на рынке, то есть спрос на QA специалистов существенно превышает предложение (за исключением junior-позиций, ведь претендентов на них почти всегда больше, чем открытых вакансий).

Уровень зарплат

Для QA Engineer-специалистов уровень зарплат высок в сравнении со средними показателями во всех профессиях и в целом соответствует показателям оплаты в ИТ-индустрии. Так, в США средняя зарплата QA-инженера составляет $88,510 в год или $42.56 в час, согласно отчету Бюро статистики труда США за 2017 год. При этом, 10 процентов наиболее высокооплачиваемых специалистов в этой сфере получают $139,390 в год или $67.02 в час, тогда как зарплата 10 процентов наименее оплачиваемых спецов составляет $46,240 в год или $22.23 в час. В наших краях оклады QA-инженеров в цифрах выглядят менее впечатляюще, но все равно внушительно в сравнении с общей статистикой: средняя месячная зарплата QA-спецов составляет около $1700 в месяц в Украине, 110 тыс. рублей (около $1630) в месяц в России и $1000 в Беларуси. Есть такая профессия — ПО проверять. Как стать QA Engineer - 2

Обязанности QA-инженера

Хотя в целом QA Engineer — это достаточно общее определение профессии, в которую входит целый ряд позиций в составе команды разработчиков с более конкретной специализацией, можно выделить ряд задач, в большинстве случаев являющихся частью обязанностей QA-инженера. Стоит также отметить, что QA-инженеров чаще всего делят на два основных “подвида” — ручных тестировщиков и QA-автоматизаторов. Различия между этими двумя позициями весьма велики (более подробно об этом ниже), как, соответственно, и требования к навыкам соискателей таких позиций.
  • Документирование тестовых случаев.
  • Проведение и документирование анализа рисков.
  • Документирование прогресса и результатов тестирования.
  • Подготовка автоматизированного тестирования.
  • Разработка стандартов и процедур для определения качества продукта и готовности к релизу.
  • Обнаружение ошибок в программном продукте.
  • Внедрение инноваций и оптимизация общих процессов тестирования.
  • Выявление, локализация и отслеживание ошибок на протяжении всего тестирования.
  • Определение потенциальных проблем, с которыми могут столкнуться пользователи.
  • Выполнение ручного и автоматического тестирования.
  • Исследование и анализ тестируемых характеристик продукта.
  • Исследование новых инструментов, технологий и процессов тестирования.
  • Проверка пользовательских интерфейсов на согласованность и функциональность.

Я б в QA-щики пошел, пусть меня научат. Как попасть в профессию?

Сразу следует отметить, что так называемый порог входа в профессию QA Engineer считается одним из самых низких в ИТ, то есть стать QA-инженером вполне можно без профильного образования в одной из ИТ-специальностей и даже без предварительного опыта работы в данной сфере. Однако совсем уж человека с улицы на такую работу конечно не возьмут. Чтобы претендовать на должность QA Engineer, нужно как минимум иметь общее представление о средах тестирования и разработки ПО, а также жизненных циклах девелопмента. Высшее образование тоже будет совсем не лишним, а лучше всего подойдут выпускники, получившие дипломы по таким специальностям, как разработка ПО, проектирование ПО или компьютерные науки. Есть такая профессия — ПО проверять. Как стать QA Engineer - 3Дальше несколько советов о том, как попасть в профессию для тех, кому приглянется именно этот путь.
  • Займитесь самообучением

    В Сети можно найти более чем достаточно общей информации, гайдов и учебников по предметам, которые нужно знать QA-инженерам. Начать можно с ознакомления с азами дисциплин, которые входят в компьютерные науки, так как эти знания создают фундамент для дальнейшего образования в ИТ-специальностях.

  • Найдите себе ментора

    Хороший совет, который довольно часто встречается на англоязычных ресурсах, но не слишком популярен у нас. Тем не менее, совет вполне стоящий. Попросите кого-нибудь из опытных “кьюэйщиков” помочь вам с обучением профессии советами и рекомендациями, а потом может и с поиском первой работы.

  • Получите сертификацию ISTQB

    ISTQB (International Software Testing Qualification Вoard) — это международная некоммерческая организация,которая предлагает целый набор сертификаций для тестеров. ISTQB разработала программу тестирования под названием ISTQB Certified Tester, которая сейчас считается наиболее авторитетной в сфере тестирования ПО. Сертификация ISTQB доступна в более чем 100 странах мира, включая Украину, Россию, Беларусь и Казахстан. Наличие такой сертификации позволит подтвердить наличие теоретических знаний для работодателя, а подготовка к экзамену потребует приобретения этих самых знаний путем изучения учебных материалов.

  • Поучаствуйте в QA Bootcamp-е

    Bootcamp — это формат образовательных программ, которые обычно длятся около нескольких месяцев и посвящены подготовке ИТ-специалистов разных направлений. Участие в такой программе поможет быстро и достаточно эффективно подготовиться к работе в качестве QA-инженера, особенно если у вас уже есть теоретическая база и/или опыт в программировании и разработке. Кроме того, участие в QA Bootcamp-е должно помочь стать частью тусовки и обзавестись контактами, которые окажутся полезными при поиске работы.

  • Стажировка

    Ну и еще одним достаточно эффективным способом освоить все тонкости работы в QA может быть стажировка в одной из компаний, которые занимаются разработкой ПО и имеют солидную профессиональную репутацию. За те же несколько месяцев у специалистов, работающих в данной сфере, можно научиться не только теории, но и практическим особенностям профессии, о которых не рассказывают при обучении.

Есть такая профессия — ПО проверять. Как стать QA Engineer - 4

Инструменты работы QA-инженера

В своей работе, в зависимости от задач и специализации, “кьюэйщикам” приходится использовать достаточно широкий набор инструментов. Коротко пройдемся по наиболее популярным категориям рабочих инструментов QA-инженера.
  1. Инструменты ручного тестирования

    Так называемые ручные тестировщики, то есть специалисты, которые занимаются тестированием и поиском ошибок вручную, полагаясь на человеческое восприятие, должны использовать целый набор инструментов, не считая мобильные и настольные операционные системы и браузеры, работу программы в которых надо проверять по отдельности.

    • Средства управления процессом тестирования (Test management tools или TMTs)

      Средства управления тестированием призваны организовать процесс поиска багов, облегчить создание и хранение отчетов и прочей документации. Среди наиболее популярных TMT: Test Manager, SpiraTest, HP-ALM (QC) и другие.

    • Инструменты для управления дефектами (Defect tracking tools или DTTs)

      С помощью DTTs QA-инженеры отслеживают дефекты, обнаруженные в программе, и генерируют отчеты об ошибках, чтобы сообщить о них команде разработчиков. Примеры популярных инструментов для управления дефектами: BugZilla, Mantis, IBM Rational ClearQuest.

    • Инструменты для менеджмента проектов

      Инструменты для проджект-менеджмента, которые повсеместно используются в Agile-проектах и включают в себя набор стандартных функций, таких как тайм-трекинг, списки задач, wiki-документацию и т.д., нужно знать и QA-щикам. Наиболее популярным инструментом менеджмента проектов считается Jira. Среди альтернатив популярностью пользуются Redmine, YouTrack и Backlog.

    • MS Excel и SQL-клиенты

      MS Excel по-прежнему достаточно широко используется для описания результатов масштабных тестирований и последующего их импортирования в средства управления процессом тестирования. Более удобной и современной альтернативой MS Excel-у является программа Test Studio. SQL-клиенты применяются в тех случаях, когда QA-инженеру нужно подключиться к базе данных.

  2. Инструменты автоматического тестирования

    QA-автоматизатор (QA Automation engineer) — это другая базовая специальность, являющаяся составной частью профессии QA-инженера. В отличие от “мануальщика,” который тестирует продукты вручную, QA-автоматизатор занимается написанием скриптов для автоматического тестирования программ и проверки результатов такого тестирования. Соответственно, QA-автоматизаторы в своей работе используют собственные инструменты.

    • Инструменты для автоматизации тестирования

      Наиболее популярными инструментами автоматизации тестирования являются: Selenium, TestComplete, Katalon Studio и Ranorex.

    • Фреймворки автоматизированного тестирования

      Вместо создания сложных сред автоматизации с нуля QA-автоматизаторы также могут пользоваться готовыми библиотеками, такими как Serenity (фреймворк на основе Java), Cypress, RedwoodHQ и ряд других.

    • IDE для программирования

      VSCode, Visual Studio, IntelliJ IDEA и другие.

    • CI/CD-инструменты

      Jenkins, TeamCity, Gitlab CE и другие.

Мнения, советы и инсайты бывалых

Ну и напоследок несколько цитат от опытных QA-инженеров с честными мнениями о преимуществах и недостатках этой профессии, а также советами, основанными на личном опыте. “Нужно понимать, что работа в QA/тестировании ПО многим надоедает довольно быстро. Через какое-то, достаточно небольшое время она перестает предлагать сложные задачи, требующие обучения и саморазвития. Еще один момент, о котором стоит упомянуть — 95% QA-инженеров (не считая ручных тестировщиков и QA-аналитиков) зарабатывают гораздо меньше денег, хотя выполняют такие же по сложности, а иногда и более комплексные задачи, как и сотрудники на позициях Dev и DevOps. Разница в зарплатах очень большая и, на мой взгляд, это несправедливо,” — отметил Чарита Канканамге (Charitha Kankanamge), менеджер по качеству программного обеспечения в Amazon. “QA позиции могут быть хорошими или плохими в зависимости от того, насколько серьезно компания относится к багам и недоработкам в ПО. Компании, делающие критически важные программы, от работы которых зачастую зависят жизни людей, разумеется очень серьезно относятся к ошибкам в своих продуктах и вкладывают значительные средства в их поиск. Работа в таких компаниях — это хорошие QA позиции. Компании, которые стремятся выпускать свои продукты и обновления как можно скорее, потому что в них есть новые функции и возможности, уже разрекламированные пользователям и обещанные клиентам, как правило относятся к QA без должного внимания, позволяя юзерам самим находить ошибки. Это плохие QA позиции. Избегайте работы в компаниях, которые ставят краткосрочные задачи, нацелены исключительно на прибыль, не уделяют должного внимания спецификациям и не ценят QA. Увы, сейчас таких большинство,” — сказал Брэд Харрисон (Brad Harrison), опытный разработчик и автор учебных материалов по программированию. “Хороший QA-инженер должен быть разработчиком-программистом, точнее понимать специфику данной работы, не обязательно на самом глубоком уровне. Мой совет касательно карьеры в QA — найдите свою нишу. Я, например, для себя выбрал нишу работы с операционными системами, особенно мобильными и открытыми ОС. Но при этом помните, что QA — это очень и очень обширная сфера, так что не стоит зацикливаться только на своей нише. Читайте и изучайте как можно больше, стремитесь овладеть знаниями во всех сферах QA, таких как автоматизация тестирования, разработка и управления тестированием и т.д. Это — ключ к успеху,” — советует Брендан Донеган (Brendan Donegan), QA Engineer в компании Canonical.
Комментарии (7)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Алексей Уровень 13
12 марта 2020
Пишите на русском? Пишите по Русски! на Украине, "на" а не "в" Русский язык перенял "на" у Украинского "Як умру, то поховайте ....На Вкраїні милій" или вирши Шевченко тоже перепишите? "Як умру, то поховайте ....в Вкраїні милій"🤦‍♂️. Ховають в могиле а не в Украине.🤦‍♂️ По русски - На Украине, На кавказе, На сахалине, На рынке, На острове ... --- Простите вырвалось. Ни в коем случае не хочу ни какого раздора, родственники живут на Украине, созваниваемся, переписываемся - помогаем друг другу.
Драконя Уровень 3
12 марта 2020
Настолько общая статья, насколько можно... Инструменты для автоматизации тестирования: а где вариант с Selenide? Фреймворки автоматизированного тестирования: а где TestNG, JUnit, Allure?
12 марта 2020
Пришёл на Javarush как раз из-за желания научиться писать автоскрипты в связке Java + Selenium :)