Хто такий QA Engineer?

02 квітня 2023

У межах рубрики «IT Role» ми з вами знайомилися зі сферою менеджменту: говорили про проджект-менеджера, продакт-менеджера та продакт-оунера. Давайте сьогодні трохи обговоримо забезпечення якості ПЗ та одну з найбільш затребуваних професій — QA Engineer.

Хто такий тестувальник?

Стоп, ми ж з вами вирішили говорити про QA Engineer. Тоді до чого тут тестувальник? Розберемося з поняттями, які можуть збентежити під час знайомства з цією професією:

  • Quality Assurance — процес, спрямований на забезпечення високої якості продукту, що розробляється. Він присутній на всіх етапах розроблення, запуску та подальшої підтримки: сюди входить підбирання методів/методологій для контролю за якістю, створення стандартів, підбирання інструментів для збору та аналізування інформації, налагодження механізму виявлення та запобігання дефектам (або баґам). Якщо по-простому, основне завдання QA — зробити програму краще як для бізнесу (реалізувавши бажані функції), так і для кінцевого юзера (щоб йому було зручно користуватися нею). При цьому важливо запобігати появі помилок та збоїв.
  • Quality Control (контроль якості) — одна зі складових QA. Тут мають на увазі аналізування отриманих даних після проведення тестів, пошук та виявлення помилок/дефектів. І якщо QA — великий термін, що описує весь процес забезпечення якості в компанії, говорити про QC будемо в контексті певного продукту — перевірка його коду, юзабіліті, дизайну тощо.
  • Testing (тестування) — процес перевірки реалізованих функцій на відповідність заданим параметрам.

Ролі фахівців із забезпечення якості

Серед експертів у тестуванні ПЗ можна виділити 4 основні ролі, що відрізняються своїми KPI (Key Performance Indicators або Ключові показники ефективності). Найчастіше один фахівець поєднує щонайменше кілька ролей:

  • Менеджер (Test Manager). Відповідає за організацію процесу забезпечення якості: складає та контролює плани й терміни виконання робіт, спілкується з ключовими стейкхолдерами, стежить за % покриття вимог тестами, організовує роботу QA-команди.
  • Аналітик (Test Analyst). Працює з вимогами (аналізує однозначність, відсутність суперечностей, повноту) та структурою застосунків (виділяє основні складові, пріоритезує терміновість тестування, складає схематичну карту).
  • Дизайнер (Test Designer). Отримавши аналіз вимог та карту програми, розробляє тест-кейси.
  • Тестувальник (Test Executor, Tester). Виконує написані тести, створює технічну документацію, де описує знайдені дефекти і як він їх отримав.

Види тестувальників

Можна виділити 2 великі групи щодо способу проведення процесу тестування:

  • Функціональний/мануальний тестувальник. Перевірка програм/застосунків згідно із заданими критеріями проводиться вручну.
  • Автотестувальник. Перевірка відбувається за допомогою коду, написаного для автоматизації процесу.

Також компанії можуть виділяти на окрему посаду експертів, які займаються певним видом тестування: наприклад, security QA Engineer — перевіряє системи безпеки (дуже актуально в банківській сфері), тестувальник локалізації — важливо для програм, що виходять у різних країнах тощо. Але найчастіше потрібні фахівці, здатні проводити щонайменше кілька різновидів тестування.

QA Engineer і тестувальник

Ми розібрали процеси забезпечення якості, види та ролі фахівців. Чи можемо тепер сказати точно, в чому полягає різниця між QA Engineer та тестувальником?

Теоретично, QA Engineer — ширше поняття, яке передбачає фахівців, відповідальних за забезпечення якості у компанії: сюди входить підготовка плану, необхідної документації, аналізування вимог, написання тест-кейсів тощо. Вони відповідають за налаштування механізму, який може покращити як програмне забезпечення, так і сам процес розробки загалом. QA Engineer проводить тестування за попередньо підготовленими завданнями, аналізує, де і як краще шукати можливі вразливості й баґи.

На практиці, через відносну «молодість» ІТ-сфери, отримуємо кашу у вигляді суміші різних завдань та обов'язків в одній вакансії. Буває так, що в компанію шукають QA-менеджера, хоча на практиці потрібні автотестери або мануальні тестувальники.

У чому полягає робота QA-інженера?

Основне завдання QA-фахівця — забезпечити випуск якісного продукту. Його можна розбити на низку цілей:

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

Обов'язки фахівців-тестувальників

  1. Вивчення специфікацій до продукту у тандемі з бізнес-аналітиками чи замовниками.
  2. Пошук слабких місць для більш детального спостереження.
  3. Планування тестування та написання тест-кейсів.
  4. Проведення тестів та аналізування отриманих даних.
  5. Спілкування з розробниками про внесені виправлення.
  6. Проведення повторного тестування пофікшених елементів та роботи всього застосунку з виправленими фічами.
  7. Аналізування процесів всередині команди щодо ефективності.
  8. Ведення документації.
  9. Проведення мітингів.

Куди можна розвиватися QA-фахівцю?

У разі жорсткої конкуренції, створення якісного продукту — основне завдання будь-якого бізнесу, тому попит на таких фахівців зростає. Якщо раніше поріг входу був мінімальний, зараз для успішного старту навіть на позиції Junior потрібно пройти спеціальні курси з тестування. Припустимо, ви отримали цю посаду. Куди йти далі?

Вертикальне кар'єрне зростання може початися з позиції Trainee і йти шляхом Junior → Middle → Senior. Далі ви можете стати тім-лідом, а потім — головою відділу забезпечення якості (якщо він є у вашій компанії).

Горизонтальне кар'єрне зростання передбачає розвиток hard skills: наприклад, можна йти в тестування безпеки (перспективний напрям в еру масової діджиталізації) або ж впритул зайнятися автотестуванням, включно з вивченням мов програмування.

Також можливий перехід у суміжні галузі: менеджмент, дизайн, розроблення. Звичайно, це вимагає вивчення нової інформації, але бекґраунд та знання IT-кухні зсередини допоможуть розібратися у тонкощах швидше.

Для кого підходить посада інженера із забезпечення якості?

Ви відкриті новим знанням, полюбляєте шукати нестандартні шляхи для виконання звичайних завдань, умієте знаходити причинно-наслідкові зв'язки, умієте знаходити причинно-наслідкові зв'язки та відповіді на різні запитання? Тоді професія тестувальника може прийтись вам до душі!

Якщо вирішили спробувати себе в цій ролі, можна почати з вивчення матеріалу в інтернеті або піти на курси з основ тестування ПЗ. Тим самим ви заощадите час, при цьому отримаєте систематизовану інформацію, яку зможете використати на практиці.

Схожі теми