Обзоры профессий
  • 31.05.2024
  • 706
  • 0

Кто такой QA Engineer и как им стать

Контролирует качество продукта с первого прототипа до релиза

QA расшифровывается как Quality Assurance, или «обеспечение качества». По сути, QA-инженер — это участник IT-команды, который отвечает за конечный результат проекта. Он консультирует программистов, чтобы те допустили как можно меньше ошибок при написании кода, а еще продумывает сценарии тестирования, находит баги, устраняет дефекты и проверяет продукт непосредственно перед демонстрацией заказчику.

В статье расскажем, какие навыки нужны специалисту, сколько он зарабатывает, и где обучают профессии QA Engineer.

Оглавление

  1. Что делает и какие задачи решает QA-инженер
  2. Типы тестирования
  3. Какие знания и навыки нужны QA-инженеру
  4. Обязанности QA-инженера
  5. Сколько зарабатывает QA-инженер
  6. Как стать QA-инженером
  7. Курс «Профессия Инженер по тестированию» от Skillbox
  8. Курс «QA Engineer. Basic» от OTUS
  9. Курс «QA тестирование для начинающих» от UUCourses
  10. Карьера QA-инженера
  11. Где начать зарабатывать
  12. Что почитать QA-инженеру
  13. Плюсы и минусы профессии
  14. Ответы на вопросы

Специалист по обеспечению качества работает по четким алгоритмам. Его цель — предусмотреть и обнаружить все возможные недочеты в программе. Для этого тестировщик пытается предугадать действия реальных пользователей продукта и придумывает тесты.

Что делает QA-инженер на работе:

Классифицировать методы тестирования можно тремя способами.

По степени доступности кода для QA-инженера

Различают тестирование белого, серого и черного ящиков — в зависимости от того, может QA Engineer просматривать исходный код продукта или нет:

Метод Белый ящик (white box testing) Серый ящик (grey box testing) Черный ящик (black box testing)
В чем суть Основной фокус делается на просмотре кода — QA Engineer знает, какие функции выполняет каждый блок программы Специалист видит часть программного кода или имеет доступ к отдельным внутренним настройкам продукта, которые скрыты от пользователей QA-инженеру не открывают доступ к коду — он должен посмотреть на программу глазами реального пользователя
Что делает QA Engineer Изучает код, самостоятельно создает тестовые примеры и внедряет алгоритмы проверки Проверяет продукт через программный интерфейс и подсматривает в код, чтобы ничего не упустить Взаимодействует с интерфейсом по определенному сценарию, оценивает работу программы

По оцениваемым требованиям

Пользователи приложения ожидают, что оно будет решать определенные задачи. Чтобы проверить, выполняет программа нужные действия или нет, проводится функциональное тестирование. Допустим, QA-инженеру поручили оценить онлайн-сервис для торговли автомобилями. Он проверит:

А по итогам нефункционального тестирования можно судить о том, насколько приложение удобно само по себе. Если вернуться к примеру с онлайн-сервисом для торговли автомобилями, QA-инженер должен проверить:

По используемым инструментам

Для ручного тестирования QA-инженеру достаточно мыши и клавиатуры. Специалист работает с интерфейсом приложения — заполняет формы, нажимает на кнопки. Его задача — удостовериться в том, что реальный пользователь не столкнется с ошибками, когда будет делать то же самое.

Разберемся с четырьмя видами ручного тестирования по вопросам, на которые пытается ответить QA Engineer:

  1. Модульное (unit-тесты). Функционируют ли отдельные части кода и компоненты программного обеспечения?
  2. Интеграционное (Integration Testing). Работают ли части приложения вместе?
  3. Системное (System Testing). Отвечает ли ПО исходным техническим требованиям?
  4. Приемочное (Acceptance Testing). Решает ли программное обеспечение проблему бизнеса?

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

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

Методологии разработки — Scrum, принципы Agile, Kanban, жизненный цикл ПО, система контроля версий Git.

Основы операционных систем — а еще устройство компьютера, командная строка Linux и Windows.

Языки программирования (для автоматизаторов) — Java, JavaScript, Python.

Теория тестирования и тест-дизайн — виды проверок, базовые термины, тест-кейсы, документация, чек-листы.

Базы данных и SQL — выборка, сортировка, группировка.

Инструменты тестирования — для проверки мобильных приложений (XCTest, Espresso), работы с сайтами и веб-приложениями (Cypress, Katalon Studio, Selenium), тестирования API (SoapUI, Insomnia, Postman). Для автоматизаторов — HP-UFT, Sahi.

Системы управления проектами — Jira, YouTrack, Redmine, Trello.

Баг-трекинги — Qase TCMS, Kiwi TCMS.

Основы взаимодействия клиент-сервер — сети, понятия UDP, HTTP/HTTPS, TCP/IP, IP.

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

Чем занимается QA Engineer:

  1. Изучает техническую документацию, чтобы найти ошибки в требованиях к продукту до того, как программисты начнут его разрабатывать.
  2. Анализирует требования заказчика к будущему продукту.
  3. Обсуждает задачи с участниками команды и ищет потенциально проблемные места.
  4. Продумывает стратегии тестирования, чтобы в будущем проверить, функционирует ПО должным образом или нет.
  5. Создает внутренние и внешние метрики качества программного обеспечения. К первым относят свойства продукта, о которых знают только участники IT-команды (стиль, сложность, размер). Ко вторым — все, что важно для пользователей (цена, применимость, надежность).
  6. Пишет сценарии тестирования, чтобы разными способами оценить производительность, безопасность и другие аспекты ПО.
  7. Проверяет работу первой, самой примитивной версии продукта (Minimum Viable Product), которую выпускают на рынок, чтобы привлечь первых пользователей.
  8. Многократно тестирует код, документирует обнаруженные недочеты и помогает программистам найти причину их возникновения.
  9. Контролирует процесс исправления багов и выявляет области, которые требуют дополнительного внимания.
  10. Улучшает процесс разработки — внедряет новые методики тестирования и инструменты для повышения качества продукта.

Если обобщить, то главная обязанность специалиста — удовлетворять запросы клиентов и заказчиков продукта.

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

Медианная зарплата инженера по обеспечению качества — 122 500 ₽. Размер оклада определяется тремя факторами:

  1. Квалификация. Джуниор-тестировщики получают в среднем 66 000 ₽, мидлы — 143 000 ₽, сеньоры — 234 000 ₽
    *по данным HH.ru на момент написания статьи
  2. Регион. В столице и других крупных городах уровень зарплаты выше, чем за их пределами.
  3. Отрасль. Самые выгодные предложения в плане оклада и бонусов делают IT-корпорации, банки, телекоммуникационные компании.

А еще зарплата зависит от специализации QA-инженера:

Скриншот с сайта «Хабр.Карьера»

Зарплаты тестировщиков уровня Junior — по данным HH.ru:

Скриншот с сайта HH.ru

Уровень дохода Middle-специалистов:

Скриншот с сайта HH.ru

Предложения по зарплатам для тестировщиков уровня Senior:

Скриншот с сайта HH.ru

За рубежом специалист в должности QA Engineer получает от $82 000 до $140 000 в год — по данным аналитического сервиса Glassdoor:

Скриншот с сайта glassdoor.coom

«В регионах спрос на тестировщиков растет. Мы постоянно пополняем штат новыми сотрудниками для работы над проектами по импортозамещению», — Алина Андреева, руководитель отдела по управлению персоналом ГК Simpl

«Войти в IT» и занять должность тестировщика можно тремя способами:

Первый вариант подойдет тем, кто хочет устроиться в государственное учреждение или компанию, которая требует от соискателей высшего технического образования. Лучше поступить на программу «Управление качеством и информационно-аналитические системы» — нужный факультет можно найти в СПбГУ, ТУСУР, ЛГТУ и ТОГУ. Но университетские программы не заточены на погружение в тестирование — придется еще пройти курсы.

Самообразование требует дисциплинированности и личной организованности. Если вам тяжело структурировать обучение, нужна системность и только актуальные навыки — помогут онлайн-программы. Ниже представлена подборка лучших курсов на рынке образования.

Научитесь находить ошибки в пользовательских интерфейсах. Освоите Python, Java и JavaScript и начнете писать простой код. Узнаете об основных методах автоматизации. Освоите панель инструментов веб-разработчика.

Стоимость: 4781 ₽ — 7684 ₽ в месяц.

Рассрочка: на 31 месяц или кредит («Тинькофф», «ОТП Банк», «Почта Банк», «Сбербанк»).

Длительность курса: 10 месяцев.

Документ: сертификат установленного образца.

Программа трудоустройства: да.

Как проходит: видеоуроки в записи, домашние задания с проверкой, общение с кураторами.

Партнеры курса: «Альфа Банк», OZON, Wildberries, «ВКонтакте», QSOFT, «Интерфакс» и другие компании.

Особенности курса:

Курс «Профессия Инженер по тестированию»
Автор: Skillbox
4.91
(303 отзыва)
  • Продолжительность: 7 месяцев
  • Формат: Видеоуроки
  • Уровень сложности: Для новичков

QA-инженер (тестировщик) проверяет на ошибки, предотвращает дефекты и улучшает качество программных продуктов. Тестирование — неотъемлемая часть любого процесса в IT-индустрии. А еще, тестировщик ...

На страницу курса

Освоите тестирование мобильных и веб-приложений, коснетесь основ автоматизации, изучите основы SQL и базы данных. Научитесь находить и заводить дефекты, контролировать версии исходного кода, работать с программами и инструментами — DevTools, Postman, Docker, Git, Test IT, Confluence, Jira.

Стоимость: 82 000 ₽ или 8200 ₽ в месяц.

Рассрочка: да.

Длительность курса: 4 месяца.

Документ: сертификат государственного образца.

Программа трудоустройства: да, в OTUS помогут оформить резюме, подготовиться к собеседованию и получить должность у партнеров курса.

Как проходит: студенты посещают интерактивные вебинары, общаются с преподавателями-практиками, разбирают реальные примеры, выполняют домашние задания.

Партнеры курса: Gectaro, Test IT, Qameta Software.

Особенности курса:

Курс «QA Engineer. Basic»
Автор: Проект по обучению программированию OTUS
4.83
(95 отзывов)
  • Продолжительность: 4 месяца
  • Уровень сложности: Для новичков

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

На страницу курса

Изучите теорию, получите опыт работы с инструментами QA-инженера. Будете искать ошибки в коде, заполнять баг-репорты, использовать техники тест-дизайна, проверять API, различать базы данных. Освоите SQL, Postman, методы HTTP-запросов, гайдлайны Apple Developer и Android Developers.

Стоимость: оплата четырьмя частями от 1556 до 3590 ₽.

Рассрочка: на год, 518 — 1197 ₽ в месяц.

Длительность курса: 3–8 недель.

Документ: индивидуальный сертификат.

Программа трудоустройства: да (если записаться на премиум-тариф и не получить оффер после пятнадцати собеседований, компания вернет деньги).

Как проходит: видеоуроки на платформе «Антитренинги», практические задания, общение в чате со студентами и ментором.

Партнеры курса: Infoservice.ru, Admin24, GREVS, BrainTrust, «Альфа Банк».

Особенности курса:

Курс «QA тестирование для начинающих»
Автор: UUCourses
4.51
(20 отзывов)
  • Продолжительность: 4 часа 40 минут теории и 11 часов практики
  • Формат: Видеоуроки, Консультации
  • Уровень сложности: Для новичков

Профессия QA-инженера (тестировщика) имеет множество преимуществ: работа в различных областях, гибкий график и возможность зарабатывать удаленно. Эти эксперты работают над качеством продукта (сайт...

На страницу курса

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

Грейд Junior (джун) Middle (мидл) Senior (сеньор)
Опыт работы До года От года до трех лет От трех лет
Обязанности Вручную выполняет тест-кейсы, которые подготовили опытные специалисты Самостоятельно пишет и проводит тест-кейсы, заполняет документацию, составляет задачи для QA уровня junior Разрабатывает план тестирования и сложные тест-кейсы, вводит метрики качества, принимает работу джунов и мидлов
Как повысить грейд Изучить языки программирования и стать автоматизатором Увеличить зону ответственности — взять в подчинение джуна Освоить основы менеджмента, научиться глобально мыслить и решать сложные задачи

Senior QA через пять лет может претендовать на роль тимлида и в будущем получить должность технического директора компании (CTO).

Это что касается вертикального карьерного роста. Но часто QA-инженеры становятся бэкенд-разработчиками — программистами, которые отвечают за серверную часть сайтов и приложений. А еще специалисты развиваются внутри профессии, например, выбирают узкое направление в тестировании:

Получается, у QA Engineer есть три пути — изучить язык программирования и стать разработчиком, специализироваться на одном виде тестирования или уйти в менеджмент.

Конкуренция среди QA-инженеров высокая, но отстроиться от других претендентов на должность поможет опыт тестирования. Первая практика будет на онлайн-курсах — выполните домашние задания, сдайте курсовые проекты, защитите диплом и сформируйте портфолио.

А еще резюме станет привлекательнее в глазах рекрутеров, если вы упомяните о бета-тестировании. Найдите вакансии от компаний, которые занимаются разработкой гаджетов, приложений и игр. Им часто нужны специалисты, которые придумывают пользовательские сценарии. Это научит вас логически мыслить, критически оценивать ПО и искать ошибки.

Поучаствуйте в проектах с баг-трекером и открытым исходным кодом. Это тоже опыт, о котором можно написать в резюме. Найдите онлайн-сервис и проверьте его — разработайте тест-кейсы, составьте чек-листы, оцените функционал, попробуйте наладить взаимодействие с серверной частью.

Следующий шаг — платформы краудтестинга. Компании не платят за такую работу, но иногда есть возможность поучаствовать в программе «баг-баунти», где тестировщик получает денежное вознаграждение за найденную ошибку.

Наконец, постарайтесь, чтобы вас взяли на стажировку в известную IT-компанию. Это не только опыт, но и рекомендательное письмо, привлекательная строчка в резюме и шанс на трудоустройство.

Если вы не уверены, стоит ли выбирать профессию QA Engineer, начните с бесплатных онлайн-курсов, чтобы попробовать себя в роли тестировщика. Или ознакомьтесь с другими материалами по теме.

Полезные книги:

Бесплатные курсы от Stepik:

Тематические сайты:

Телеграм-каналы:

Для работы QA-инженера характерны те же преимущества и недостатки, которые свойственны другим IT-профессиям:

Плюсы Минусы
Возможность влиять на конечный продукт Рутинные задачи — однотипные ошибки, повторяющиеся тест-кейсы
Взаимодействие с командой, развитие коммуникативных навыков Специалист должен постоянно учиться, потому что IT-сфера быстро развивается
Возможность работать из дома Высокая конкуренция среди начинающих специалистов
Достойные зарплата и социальный пакет Ненормированный график, необходимость закрывать задачи в сжатые сроки
Большой спрос на специалистов в России и за рубежом Быстрое выгорание при отсутствии баланса между работой и личной жизнью
Чтобы начать карьеру, достаточно закончить онлайн-курс Нужно владеть техническим английским языком, чтобы читать документацию и новости отрасли
Можно перейти в смежную сферу — аналитику, разработку, управление проектами Тестирование требует высокой концентрации внимания — иначе легко допустить ошибку
Не обязательно программировать, чтобы получить первый оффер Доход меньше, чем у разработчиков
Можно быстро освоить профессию — за 4–8 месяцев Малоподвижный образ жизни

Правда ли, что QA-инженер — самая простая профессия для входа в IT?

Не совсем. Тестирование — самостоятельное сложное направление в IT. Другое дело, что базовые навыки, которые нужны начинающему специалисту, легче освоить, чем менеджмент, языки и паттерны программирования. Но если вы хотите стать разработчиком, начинать с QA нелогично — это два разных карьерных трека, поэтому такой «маневр» отнимет время. Хотя перейти в смежную сферу точно будет проще, чем преодолеть порог входа с нуля.

Есть ли разница между QA-инженером и тестировщиком?

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

С какими языками программирования чаще работают QA-инженеры?

Если вы ищете баги вручную и планируете стать автоматизатором, обратите внимание на Python, Java и JavaScript. Это самые востребованные языки программирования — по данным Statista. И вместе с тем они подходят для написания тестов, в отличие от Visual Basic, C, C++.

Стоит ли учиться на QA-инженера в 2024 году?

Да, и на то есть три причины. Во-первых, компании увеличивают штат специалистов — говорится в исследовании PractiTest. Во-вторых, все больше работодателей готовы набирать джунов без опыта — по данным HH.ru. В-третьих, медианная зарплата QA-инженеров всех грейдов продолжает расти — согласно результатам исследования QA Studio.

Как стать востребованным QA-инженером?

Основа успешной карьеры — качественное образование. Но когда вы получите работу, нужно будет продолжать учиться — подумайте, в каком направлении хотите развиваться, и изучите development map, которую предложит компания. Регулярно проходите ассессмент. Ходите на собеседования, чтобы знать, как меняется рынок труда. Следите за тем, как развивается IT-сфера. Начните преподавать — менторство отлично прокачивает хард и софт скилы.

Какими софт скилами должен обладать QA-инженер?

Важные качества QA Engineer — умение искать информацию в интернете, работать в команде и с искусственным интеллектом. А еще знание принципов тайм-менеджмента, способность к аналитике, настойчивость, терпение, педантичность, дотошность, коммуникабельность, внимательность, здоровый перфекционизм, любознательность, желание разбираться в сложных вещах, самообучаемость, усидчивость и стрессоустойчивость.

Фото для статьи: unsplash.com

Редактор: Амина Супхонкулова

Тэги: #qa-инженер #тестирование #IT #новая профессия #курсы для новичков

Поделиться