06.08.2022
10 хвилин читання

Хто такий Quality Assurance Engineer, як і навіщо їм можна стати

Сергій Немчинський

Початківці IT-стартапи нерідко намагаються заощадити і не наймають QA інженерів. Що ж, це одна з причин, чому 95% стартапів закривається. Quality Assurance Engineer, або, простіше кажучи, тестувальник, займається тим, що знаходить в програмному коді недоліки і повідомляє про них розробникам, щоб ті їх виправили. По-хорошому, перевірка якості коду повинна займати не менше 30% загального часу розробки продукту. Як же працює тестувальник ПЗ і як їм стати?

Обов’язки тестувальника

Основне завдання тестувальника – переконатися, що програмний продукт відповідає вимогам, успішно виконує свої функції, працює якісно і без перебоїв, викликаних внутрішніми причинами. Повний цикл перевірки якості ПО виглядає так:

  • уточнення вимог до продукту у замовника, аналітика або менеджера проекту
  • підготовка тестіровочного документації – чек-листів, тест-кейсів
  • розробка Автотест, перевірка їх якості
  • розробка сценарію тестування і підбір необхідних тестів
  • проведення тестування, аналіз поведінки ПО
  • заповнення тестіровочного документації, аналіз знайдених багів
  • повторна перевірка після виправлення коду.

Як бачите, операцій в цьому ланцюжку досить багато. Це дозволило виділити в професії тестувальника кілька спеціалізацій. По-перше, стали відрізняти Software Testing Engineer – який перевіряє якість коду – і Quality Assurance Engineer, який займається верхнеуровневой оцінкою якості ПЗ. По-друге, тестувальники розділилися на мануальщика – які перевіряють код вручну – і автоматизаторів – які пишуть Автотест. Поговоримо про це детально.

Мануальне і авто-тестування

Ми вже згадали, що мануальное тестування – це перевірка коду вручну, а автоматичне – за допомогою Автотест. Автотест – це скрипти, невеликі програми, які виконують прості операції і фіксують реакцію системи.

Спочатку все тестування було ручним, а автоматичне тестування з’явилося разом зі складними системами, які перевіряти вручну занадто витратно. У автоматичного тестування є свої переваги: воно економить час, скрипти можна використовувати повторно, а ще за допомогою скрипта можна змоделювати безліч користувачів для навантажувального тестування. Але замінити ручне тестування тестами найближчим часом не вийде, і ось чому.

Автоматичне тестування не бачить систему очима реального користувача. Припустимо, якась функція повинна видавати відповідь на введення команди. Скрипт бачить, що відповідь видається, тест пройдено. А користувач бачить, що відповідь нерелевантен і не відповідає на запит.

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

Що повинен знати тестувальник

Список вимог до тестувальників може сильно змінюватися від компанії до компанії. Це нормально, оскільки може бути застосовано до будь-якої IT-спеціальності. Індустрія швидко розвивається і стандарти стрімко змінюються. Але є базові знання, які необхідні для початку.

Hard SkillsКомп’ютерна грамотність – операційні і файлові системи, правила роботи з кодом, клієнт-серверну архітектуру, базові знання про залозіТеорія тестування – види тестування, артефакти, тест-дизайн, локалізація багівІнструменти тестування – багтрекер, API, логи, скріншоти, бази даних, Bash, Chrome DevTools, Android StudioОснови автоматизації – мови, фреймворки, CI \ CD, драйвери, звіти, інструменти автоматизації для різних платформSoft SkillsАнглійська на рівні просунутого користувачакомунікабельністьНасмотренность і почуття стилюДійшлість, посидючість, стійкість до монотонної роботиНавик пошуку інформації в мануалах або в інтернетіЗдатність сприймати і аналізувати великі обсяги данихЗвичка до самостійного вирішення проблем

Якщо софт-скіли можна і потрібно тренуватися самостійно, то хард-ськіллу треба вчитися. Як довго і де?

Чи довго вчитися на QA інженера?

Різні курси в інтернеті пропонують навчання професії тестувальника за термін від трьох місяців до року. Чи можна освоїти цю професію за три місяці? І так і ні.

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

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

Плюси і мінуси професії QA інженера

Вважається, що основний плюс професії QA-інженера – це легкий і швидкий спосіб «увійти в айті». У цьому є частка істини. Навчання триває недовго, попит на тестувальників постійно зростає, зарплати пристойні. Професія постійно розвивається, весь час з’являються нові технології і рішення. Можна працювати на удаленке, а можна в офісі.

Можна вибрати сферу діяльності собі до душі, і тестувати цікаві продукти. До речі, в тестуванні є чимала частка творчості – тестувальник повинен придумати те, чого не було у вимогах і що могли пропустити інші. Словом, тестувальником бути не нудно.

Мінусів у професії теж вистачає. В першу чергу, це неочевидна лінійка професійного розвитку. З ручного тестувальника в автоматизаторів і старші QA-інженери, а далі? У програмісти? Чи не простіше відразу вивчитися на програміста?

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

Затребуваність і оплата професії

Популярний сервіс пошуку роботи для айтішників, Джіні, пропонує 1700+ вакансій для тестувальників з 27 тисяч. Це приблизно 6% від усіх відкритих вакансій, включаючи розробників, сисадмінів і нетехнічних фахівців. Досить багато. Правда, всього 79 роботодавців згодні розглянути фахівця без досвіду. Але це вже 79 шансів!

Зарплати, за даними того ж сервісу, стартують з 500 доларів в місяць і йдуть за горизонт. При цьому тестувальники-автоматизаторів коштують приблизно вдвічі дорожче мануальщика: якщо у мануальних тестувальників більшість пропозицій це 1500-2000 доларів, то у автоматизаторів 3-4 тисячі. Найдорожчий підтверджений найм AQA-інженера в 2021 році – 7000 доларів плюс соціальний пакет.

Не забуваємо, що Джіні орієнтований на український ринок, а на міжнародному ринку зарплати QA-інженерів вище. У США, наприклад, середня зарплата тестувальника – 96 тисяч на рік, що в місяць дає 8 тисяч доларів.

Де вивчитися на QA інженера?

Пропозицій пройти курси тестувальників за три місяці і отримувати шалені гроші в IT – сотні і тисячі. На жаль, але через таких експрес-курсів ринок переповнений малограмотним Джун, які відразу хочуть більшу зарплату. З огляду на ситуацію на ринку, ми рекомендуємо вибирати курси більш тривалі, але з більш насиченою програмою. Якщо в програмі курсу немає хоча б основ автоматизації тестування, краще пошукайте інший.

І, звичайно, для ефективного навчання завжди важлива особистість викладача. На сайтах типу Coursera або Udemy безліч курсів для самостійного навчання, але більшість вважає за краще вчитися у живої людини. Викладач зможе пояснити незрозуміле, показати на прикладі, поділитися своїм досвідом. Тому у нас в FoxmindEd всі курси проходять за участю ментора, включаючи курс по QA Automation.

Висновки

QA-інженер – це хороша, сучасна професія, яка швидко розвивається, добре оплачується, і точно буде затребувана ще років 10-20. На жаль, через велику кількість недоучених Джун в цій галузі вхідний поріг кілька піднявся, і навчання треба приділяти більше часу, ніж три місяці. Але успішних студентів чекають тисячі, без перебільшення, вакансій і дуже непогані зарплати. Так що вчитися на тестувальника є сенс.

Можна сюди вставити посилання на сторінку з нашими курсами

Сергій Немчинський
CEO FOXMINDED
Додати коментар

Ваш імейл не буде опубліковано. Обов'язкові поля відзначені *

Зберегти моє ім'я, імейл та адресу сайту у цьому браузері для майбутніх коментарів