logo
09 Feb 2022

Кто такой QA engineer: что он должен знать и уметь, чтобы попасть в IT

Наталья Пиотрович

Автор полезных текстов в MC.today

Артем Бородатюк, сооснователь Netpeak Group, считает: QA engineer – одна из профессий, через которую можно попасть в IT. По его словам, здесь относительно несложно обучиться новым знаниям.

QA EngineerProfile side view of his he nice bearded guy wearing checked shirt professional, expert html data base structure screen at wooden industrial interior work place station

Редакция MC.today разобралась, что такое QA engineer, как овладеть этой профессией и сколько можно зарабатывать.


Кто такой QA engineer

QA engineer – специалист по качеству разработки программного обеспечения. QA англ. Quality Assurance. – Прим. ред. расшифровывается как обеспечение качества.

Онлайн-курс "React Native Developer" від robot_dreams.
Опануйте кросплатформну розробку на React Native та навчіться створювати повноцінні застосунки для iOS та Android.
Програма курсу і реєстрація

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

В крупных корпорациях QA-отделы большие, и там должности QA engineer и тестировщика и правда могут быть разделены. Но в небольших компаниях и стартапах тестировщик – как человек-оркестр: делает всё.

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

QA-инженер контролирует качество продукта. Вот что конкретно он делает:

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

Вот алгоритм работы над программой:

  1. В компании есть план задач и документы, где описывают программу на этапе завершения.
  2. Разработчики пишут программу и ищут в ней критические ошибки. Затем они выдают готовую программу или промежуточную версию для закрытого или открытого тестирования.
  3. Тестировщик проверяет программу во всех доступных режимах. Он смотрит, что в ней получилось, а что нет. Пошагово записывает сбои в работе и ошибки. Отдает свои записи о несоответствиях разработчикам.
  4. Онлайн-курс "QA Automation" від robot_dreams.
    Це 70% практики, 30% теорії та проєкт у портфоліо.Навчіться запускати перевірку сотень опцій одночасно, натиснувши лише одну кнопку.
    Детальніше про курс
  5. Снова подключаются разработчики. Они исправляют найденные QA-инженером ошибки и несоответствия.
  6. Затем QA-специалист снова проверяет программу. Если находит баги, отдает ее на доработку. Так происходит до тех пор, пока программа не будет готовой.

Что должен знать QA engineer

QA-инженер должен:

  • понимать жизненный цикл и этапы разработки ПО;
  • знать языки программирования, если занимается автоматизированным тестированием;
  • владеть новыми технологиями для тестирования и знать новые инструменты для автоматического и ручного тестирования;
  • уметь пользоваться протоколом HTTP и работать с кодами ответов сервера;
  • хорошо знать английский язык;
  • использовать системы bug-трекинга программы, которые помогают разработчикам программного обеспечения учитывать и контролировать ошибки. – Прим. ред., например Jira и YouTrack;
  • Онлайн-курс "Маркетолог" від Laba.
    Пройдіть повний шлях розробки маркетингових стратегій на практиці та з фідбеком від CEO бренд-маркетингової агенції.
    Програма курсу і реєстрація
  • знать язык программирования SQL;
  • работать с программным интерфейсом DOM;
  • знать данные JSON и языков HTML;
  • работать с данными cookie & session временные таблицы в базе данных, в которых можно хранить уникальные данные конкретного пользователя, которые удаляются вручную или когда закончится их срок действия или сессия. – Прим. ред.;
  • понимать объектно ориентированное программирование;
  • уметь вести тестовую документацию;
  • понимать методы scrum, agile или lean;
  • тестировать программы на основе технологического стеканабор технологий, на основе которого разрабатывают сайт или приложение. – Прим. ред., например, GoLang и/или php (symfony), PostgreSQL и/или Clickhouse;
  • знать системы CI&CD: программы Docker, GitLab, Kubernetes или их аналоги;
  • Онлайн-курс "PR Basis" від Skvot.
    Дізнайся нюанси різних сфер і обрери свою.Як результат — матимеш стратегію бренду у своєму портфоліо та зможеш стартувати в піарі. Інсайтами ділиться лекторка, яка має 9+ років досвіду.
    Детальніше про курс
  • понимать HighLoad высоконагруженные системы. – Прим. ред., Microservice Architecture программное обеспечение, направленное на взаимодействие небольших, слабо связанных и легко изменяемых модулей. – Прим. ред.;
  • уметь работать с методами обработки и инструментами big data;
  • уметь составлять тест-кейсы и тест-планы.

Артем Бородатюк советует изучить карту знаний, которую разработали в Netpeak Group. Так вы поймете, какие навыками должны обладать QA на разных уровнях.

Виды QA-инженеров

Есть несколько видов QA-инженеров, которые отличаются по уровню навыков и опыта:

  • Стажер, новичок, ассистент – специалист без опыта – trainee.
  • Младший тестировщик – 0,5–1,5 года опыта – junior.
  • Тестировщик среднего уровня – 1,5–4 года опыта – middle.
  • Старший тестировщик – больше пяти лет опыта – senior.
  • Курс-професія "Копірайтер" від Skvot.
    40 занять — і ти з упевненістю, скілами та портфоліо зможеш тиснути Apply на вакансії копірайтера.Досвідом і ключами поділяться 2 лекторки та запрошені спікери.
    Детальніше про курс
  • Ведущий тестировщик – QA tech lead.

Иногда можно встретить понятие «функциональный менеджер» (QA functional manager) – специалист, который управляет командой тестировщиков и тестированием конкретного проекта.

  • Если у компании есть большой отдел качества, то самая высокая должность QA engineer – руководитель отдела (head of QA department).

Виды QA-инженеров еще делятся по продуктам и сферам:

  1. тестировщики сайтов;
  2. тестировщики мобильных приложений – mobile QA;
  3. юзабилити-тестирование – тестировщики проверяют удобство использования программы или сайта;
  4. тестировщики игр (game tester), клиент-банков и так далее.

По механизму тестирования и специализации выделяют три группы:

Онлайн-курс "Фінансовий директор" від Laba.
Опануйте інструменти управління грошовими потоками, ризиками та активами компанії, щоби перейти на посаду CFO.
Приєднатися до курсу
  • Ручное, или мануальное, тестирование. Он пробует делать то, что в будущем будет делать пользователь.
  • Автоматизированная проверка (automation QA). Здесь нужно использовать результаты ручного тестирования. Специалист пишет программный код, который имитирует действия пользователя. Это экономит время проверки. В таком случае тестировщику обязательно нужно знать язык программирования, но уметь писать код необязательно.
  • Очень редко выделяют тестирование производительности (performance QA).

Инструменты для QA-инженера

Инструменты тестирования – это программные продукты, которые помогают QA-инженерам организовывать свою работу на каждом этапе тестирования ПО.

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

Ручное тестирование

Инженер по тестированию прогнозирует, как будет вести себя пользователь, и проверяет разработанную программу. Его задача – найти поведение, которое будет отличаться от ожидаемого.

Ручное тестирование может проводиться:

  1. в рамках интеграционного тестирования – работа с другими ПО и системами;
  2. в рамках регрессионного – тестирование изменений;
  3. Онлайн-курс "Проджект-менеджер в ІТ" від Laba.
    Навчіться запускати, контролювати й успішно реалізовувати ІТ-проєкти. Пройти весь шлях проєктного управління на реальному кейсі вам допоможе PMD із 19-річним досвідом в ІТ.
    Детальніше про курс
  4. при системном функциональном тестировании.

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

Для ручного тестирования есть специальные программы. Там же QA-инженер общается с командой. Вот основные:

  • Jira;
  • Bugzilla;
  • Redmine.

Еще QA-инженер создает и анализирует скриншоты с помощью специальных инструментов. Здесь специалисту нужны:

  • Monosnap;
  • Recordit API;
  • Курс Job Interview Crash Course від Enlgish4IT.
    Отримайте 6 шаблонів відповідей на співбесіді, які ви зможете використовувати для структурування своїх відповідей. Отримайте знижку 10% за промокодом ITCENG.
    Приєднатися
  • Snagit;
  • GreenShot.

Для тестирования часто нужны разные наборы данных. Для этого QA-инженеры используют инструменты-генераторы:

  • Bugmagnet;
  • Mockaroo.com.

Тестирование клиентского опыта покажет, удобен ли продукт для пользователей. Вот приложение, которые помогают это сделать быстрее:

  • Reflector;
  • User Zoom;
  • Loop.
  • Онлайн-курс "Data Science with Python" від robot_dreams.
    Навчіться користуватися бібліотеками Python для розв’язання задач дата-саєнтистики, обробки масивів даних та побудови ML-моделей.
    Програма курсу і реєстрація

QA-инженеры часто пользуются списком задач, расписанным по пунктам, чтобы ничего не потерять. Для этого они используют:

  • Sitechсo;
  • Testpad;
  • Teamsuccess.

Мобильные эмуляторы – тоже инструменты для тестирования работы программ.

Мобильный эмулятор – программный комплекс, который точно копирует все функции мобильного устройства.

В работе QA-инженеры используют такие мобильные эмуляторы:

  • World Wide Web;
  • BrowserStack;
  • Онлайн-інтенсив "Як створити рекомендаційну модель за 2 дні" від robot_dreams.
    Ви пройдете етапи вибору, навчання, оцінки рекомендаційної моделі для електронної бібліотеки та отримаєте індивідуальний фідбек від лекторки.
    Приєднатись до інтенсиву
  • CrossBrowserTesting;
  • Mobile Phone Emulator.

Многие приложения используют API программный интерфейс приложения. – Прим. ред.. Для его тестирования специалисту нужны:

  • SoapUI;
  • Postman.

Еще один важный этап проверки программных разработок – тестирование безопасности. В этом помогают программы:

  • NetSparker;
  • Acunetix Vulnerability Scanner;
  • OWASP.
  • Курс-професія "Motion Designer" від Skvot.
    Навчіться створювати 2D- та 3D-анімації у софтах After Effects, Cinema 4D та Octane Render. Протягом курсу ви створите 14 моушн-роликів, 2 з яких — для реального клієнта.
    Детальніше про курс

Нагрузочное тестирование

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

  • Apache JMeter;
  • WebLOAD;
  • Micro-Focus Loadrunner.

Автоматизированное тестирование

Автоматизированное тестирование, или автоматизация тестирования, – это метод тестирования ПО, который выполняется с помощью специальных программных средств. Такое тестирование значительно сокращает время поиска багов в сравнении с ручным. Помогают в этом такие инструменты:

  • Selenium;
  • TestComplete;
  • Katalon Studio.

Типичный план рабочего дня QA-специалиста

В свой рабочий день QA-специалист выполняет такие задачи:

  1. Присутствует на офисных встречах, планирует задачи и делает отчеты по выполненным проектам.
  2. Пишет тест-кейсы. То есть четко описывает действия, которые нужно выполнить для проверки отдельной функции приложения. Возможно, записывает ошибки – смотря на какой стадии находится разработка программы. Еще он тестирует программы или приложения.
  3. Проверяет баг-трекинговые системы, появляются ли там исправленные ошибки.
  4. Изучает пожелания заказчика.
  5. Общается с разработчиками.
  6. Читает тестовую документацию.

Плюсы и минусы профессии QA engineer

Антон Мужайло, Quality Solutions Architect в GlobalLogic Ukraine, считает: QA-инженер видит весь процесс создания продукта, поэтому разбирается в том, как создавать ПО и постоянно совершенствует свои навыки.

Из минусов профессии он называет такие:

  • это творческая работа, которая иногда требует нестандартного подхода;
  • психологически тяжело указывать коллегам, что они сделали не так;
  • сложно показать физический продукт – результат своей работы, из-за чего может падать мотивация.

Как стать QA-инженером

Обучиться специальности в Украине можно на факультете информатики и вычислительной техники или факультете прикладной математики в КПИ Национальный технический университет Украины «Киевский политехнический институт имени Игоря Сикорского». – Прим. ред.. Например, на кафедре системного программирования и специализированных компьютерных систем (СПСКС).

У Антона Лапоногова, QA engineer в Uklon, нет IT-образования. Он считает: если вы хотите стать тестировщиком, то можете пройти специальные курсы. Еще он рекомендует такие материалы для самостоятельного изучения:

  1. Книга «Тестирование Dot Com» Романа Савина;
  2. YouTube-канал «окиселева»;
  3. YouTube-канал Hillel IT School.

Артем Бородатюк делится руководством для новичка в QA от Netpeak Software. Еще он дает алгоритм, как им пользоваться:

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

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

QA Engineer

Вакансии QA-специалистов. Источник: jobs.dou.ua

Вы хорошо знаете теорию QA-инжиниринга, если можете ответить на вопросы:

  1. что такое тестирование и какие у него цели;
  2. что такое баг и каков его жизненный цикл;
  3. какие есть виды тестирования;
  4. какая документация используется при поиске ошибок.

QA улучшает процесс разработки, потому ему важно иметь навыки:

  • разработчика – он должен понимать, как функционал приложения может быть технически ограничен и хотя бы поверхностно понимать код;
  • бизнес-аналитика – он должен понимать рынок и целевую аудиторию, чтобы заранее предугадать путь клиента в новой программе;
  • менеджера проекта – чтобы понимать, зачем делают ту или иную работу.

Карьерные перспективы

QA-инженеры могут развиваться в трех направлениях:

  • Изучать новые области программирования и расти как QA в такой последовательности:
  1. junior QA;
  2. middle QA;
  3. senior QA;
  4. QA team lead;
  5. QA manager;
  6. head of QA department.
  • Освоить автоматизированное тестирование и развиваться в этом направлении.
  • Переквалифицироваться в бизнес-аналитика или программиста.

На сайте robota.ua в Украине больше 500 вакансий на QA разного уровня.

QA Engineer

Источник: robota.ua

На DOU их больше 900.

QA Engineer

Источник: jobs.dou.ua

Еще QA engineer может совмещать основную работу с преподаванием или консультированием.

Сколько зарабатывает QA engineer

По информации DOU, в среднем зарплата младшего QA-инженера – $600. Средняя зарплата специалиста опытом 1–3 года – больше $1,5 тыс. Старшие получают около от $2,8 тыс.

Источник: jobs.dou.ua
Источник: jobs.dou.ua
Источник: jobs.dou.ua

По информации сайта по поиску работы work.ua, средняя зарплата QA-инженера в Киеве – 27,5 тыс. грн, а в Украине – 19,5 тыс.

Источник: work.ua
Источник: work.ua

В зависимости от опыта и умений, на сайте по поиску работы djinni указаны зарплаты для QA-специалистов от $500 до $7 тыс. В среднем тестировщики зарабатывают $3,5 тыс.

QA Engineer

Источник: djinni.co

Требования к junior для входа в профессию

Согласно карте знаний QA-отдела Netpeak Group, junior QA должен знать:

  • различия между QA и QС тестированием;
  • принципы тестирования;
  • самые главные понятия;
  • жизненный цикл ПО;
  • методологии разработки;
  • техники тест-дизайна;
  • тестовые артефакты;
  • цикл жизни бага.

Необязательно, но желательно разобраться, что такое верификация и валидация и как работать с таблицей принятия решения.

Еще junior должен знать такие виды тестирования:

  • функциональное;
  • тестирование сборки;
  • тестирование безопасности;
  • тестирование взаимодействия;
  • нагрузочное;
  • дымовое;
  • санитарное;
  • регрессионное;
  • конфигурационное.

Из протоколов младший QA engineer должен знать:

  • коды ответов сервера;
  • HTTPS;
  • HTTP.

Вывод

Профессия QA engineer – одна из c специальностей, которая позволяет начать работать в IT без технической подготовки. Задача QA-специалиста – следить за качеством продукта на всех этапах разработки.

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

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

В Украине открыто более 900 вакансий на позицию QA. А зарплата новичка стартует от $500. Опытный тестировщик может зарабатывать больше $2,8 тыс.

Онлайн-курс "Маркетолог" від Laba.
Пройдіть повний шлях розробки маркетингових стратегій на практиці та з фідбеком від CEO бренд-маркетингової агенції.
Програма курсу і реєстрація

Новости

Вдохновляющие компании-работодатели

«БИОСФЕРА»

Ваша жалоба отправлена модератору

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: