Чи справді для посади QA Engineer не треба мати глибоких технічних знань? Про те, чим займається тестувальник та як ним стати, розповідає Антон Мужайло, Quality Solutions Architect у GlobalLogic Ukraine.
Quality Assurance Engineer (у перекладі — «інженер із забезпечення якості») — позиція особлива й не до кінця зрозуміла. І не через брак інформації, а радше через велику кількість міфів та стереотипів.
Більшість людей уявляють QA-інженера як людину, яка щодня натискає на будь-які випадкові елементи управління програми з надією, що вона зламається. І при цьому вважають, що для посади тестувальника не треба мати глибоких технічних знань, а отже — легше пройти співбесіду та «увійти в ІТ». Давайте розбиратися, чи так це насправді.
Тож хто такий QA Engineer?
QA Engineer — це спеціаліст, який слідкує за виконанням вимог до продукту: запускає тести та застосовує інші підходи для перевірки його якості (параметра, який характеризує відношення між реальністю та очікуванням у розрізі конкретного продукту).
Як формуються вимоги до продукту? Замовник спілкується з кінцевими користувачами й на основі цього формує вимоги, які вказують розробникам, як створити продукт, а тестувальникам — як перевірити, чи розробили саме те, що треба. При цьому очікування від продукту у замовника та кінцевих користувачів можуть різнитись, що є додатковим викликом.
Що входить в обов’язки QA Engineer?
По-перше, планування. Для повноцінної та передбачуваної роботи всього проєкту потрібно мати продуманий підхід до тестування, знати список задач та кількість часу на виконання кожної з них. Також важливо розуміти наявні ризики, оскільки тестування зазвичай є останньою фазою процесу розробки перед випуском продукту.
По-друге, розробка тестових сценаріїв (тестів). Важливо описати всі сценарії, за якими кінцеві користувачі продукту будуть або потенційно можуть із ним взаємодіяти. Уявіть собі, скільки вимог ви прокручуєте в голові, коли обираєте навушники — і міцність кріплення, бо навушники можуть падати, і звукоізоляцію на випадок перебування у метро, і якість передачі звуку для прослуховування улюблених творів.
По-третє, виконання таких тестів. Кожен результат виконання тесту є доказом працездатності певної версії продукту при зазначених умовах. До речі, якщо змінити код продукту хоча б на один рядок — зміниться версія продукту і всі тести треба буде запускати знову. Саме тому тести доводиться проводити по декілька разів.
По-четверте, опис знайдених дефектів. В описі часто треба надати максимум інформації про дефект та чому саме він виникає. Згадайте, скільки разів ви крутили в руці зарядний пристрій від смартфону, намагаючись зрозуміти, чому той не заряджається, а потім раптом починає працювати.
І по-п’яте, звіт про кількість виконаних тестів, їхні результати, певні метрики та загальний вердикт: чи рекомендуєте ви, як відповідальний за якість продукту, випускати його в такому стані.
Плюси та мінуси професії QA Engineer
➕ Дана професія насамперед розбудовує особистість людини та великий спектр нетехнічних та напівтехнічних навичок, про які я розповім нижче. Навичок, які допомагають у вільному від роботи житті та навіть у випадку зміни професії.
➕ Бути QA Engineer — це бачити весь процес розробки продукту, брати участь у кожній його фазі, контролювати та вести перемовини з усіма учасниками цього процесу, що формує детальне розуміння розробки програмного забезпечення загалом.
Розуміти кінцевого користувача, його потреби й побажання та навіть знати, що конкретно йому може не сподобатись, — одна з вершин, до якої має прагнути кожен такий фахівець.
➖ Тестування, як і розробка, є творчою роботою, яка вимагає часом нестандартних підходів та мислення. Інколи це може виснажувати. Але з часом та досвідом стає легше, адже формується звичка мислити саме так.
➖ Також робота QA-інженера принципово полягає у контролі якості результату роботи інших, що може бути важко психологічно — кожен раз вказувати іншим, що вони зробили не так. Що, звісно не є проблемою, якщо робити це професійно, маючи гарні soft skills та навички комунікації.
➖ Інколи падає мотивація через те, що іншим складно побачити результат твоєї роботи. Розробник може показати готову працюючу програму. А що можеш показати ти?
Що має знати QA Engineer: hard skills, soft skills і не тільки
Існує безліч поглядів на те, які навички потрібні QA Engineer, але часто вони формуються на основі власного досвіду в певній компанії та сфері бізнесу.
Аби бути затребуваним на більшості проєктів, потрібно володіти трьома типами навичок:
- технічними (hard skills), тобто вміти писати та запускати тести;
- напівтехнічними, тобто вміти організовувати свою роботу;
- комунікаційними (soft skills), які допоможуть знайти спільну мову з людьми і швидше зростати кар’єрно.
Серед технічних навичок, крім загальних та специфічних технологій, потрібно знати теорію тестування, яка надасть уже відомі та перевірені часом способи вирішення класичних проблем. Іноді це краще, ніж вигадувати власні напівефективні підходи.
Напівтехнічні навички сфокусовані на оптимізації роботи. Знання процесів розробки продукту допомагає зрозуміти, як та з ким QA-інженеру потрібно співпрацювати для досягнення мети. Навички критики (review) передбачають розуміння принципів об’єктивності, вміння давати оцінку та ставити правильні питання. Також іноді треба запропонувати інші варіанти вирішення поточних проблем. Вміння вести документацію допоможе інформативно та доступно описувати певну інформацію. Ну а навички розповсюдження знань та навчання молодших спеціалістів є запорукою успіху на вищих позиціях.
Комунікаційні навички вирішують одну з найскладніших проблем будь-якої колективної співпраці — порозуміння людей. Вміння проводити презентації та перемовини допомагають фахівцю не тільки чітко презентувати власну ідею чи результат виконання роботи, а й обговорити це з людьми або змінити їхні переконання. Навички запобігання та розв’язання конфліктів стають важливими, коли до твоїх обов’язків починає входити прийняття складних рішень. А іноземні мови — це шлях до співпраці з іноземними компаніями та нових перспектив у власній кар’єрі.
Кар’єрні перспективи: скільки заробляє QA Engineer та куди може рости
Зазвичай в інтернеті можна знайти дуже різні діапазони компенсації для цієї професії (іноді розбіжність може бути в 10 разів). Це тому, що сума залежить від безлічі факторів: компанія, тип її бізнесу (outsourcing, outstaffing, product), локація офісів, сам проєкт, з боку інженера — вміння себе продавати, досвід, навички та навіть затребуваність певного «нішевого» спеціаліста.
До того ж, у різних компаніях градація позицій різниться: Senior QA в одній компанії може ледве пройти співбесіду на Middle QA в іншій.
Спробуємо розібратись в деталях на прикладі великої компанії.
Associate (або Trainee) QA Engineer
Це позиція, яка не вимагає досвіду, але потребує певних технічних та базових комунікаційних навичок. Вміння швидко вчитись є одним із важливих критеріїв відбору та майже гарантує вам посаду. Associate може розраховувати на 400-600$ на місяць.
Junior Manual QA Engineer
Це фахівець, який може виконувати деякі задачі самостійно, а деякі — за допомогою інших. Зазвичай робота Junior контролюється більш досвідченими інженерами. Компенсація може варіюватися від 600$ до 1100$ на місяць.
Middle Manual QA Engineer
Це фахівець, який здатний виконувати майже усі задачі самостійно або з невеликою допомогою. Компенсація: 1100-2000$ на місяць.
Senior Manual QA Engineer
Це фахівець, який крім впевнених технічних навичок повинен знатися на комунікаціях та організації робочого процесу. Такі спеціалісти мають також допомагати іншим та навчати менш досвідчених членів команди. Може розраховувати на 2000-3000$ на місяць.
Lead Manual QA Engineer
Завданням такого фахівця є розв’язання складних задач та прийняття рішень, а також контроль виконання задач цілої команди, про які треба доповідати керівництву, і ведення комунікації від імені команди. Компенсація такого спеціаліста коливається в межах 3000-3700$ на місяць.
QA Engineer, які мають певну спеціалізацію — наприклад Automation або Performance testing, — до вказаної компенсації можуть додати 20-30%.
Розвивати кар’єру QA-інженера можна в багатьох напрямах. Тут і управління тестовим процесом (Test Manager), і автоматизація тестування (Test Automation Engineer), і експерти зі спеціалізованих типів тестування — тестування навантаження (Performance Test Engineer) або тестування вбудованих пристроїв (Embedded Test Engineer).
До того ж, маючи глибокі навички та досвід, тестувальнику досить легко перекваліфікуватись у бізнес-аналітика (Business Analyst) та навіть проєктного менеджера (Project Manager).
Як стати QA Engineer?
Алгоритм такий:
- знаходимо 10-15 вакансій рівня Trainee/Associate/Junior від найбільших компаній, представлених у вашому регіоні;
- зазначені в них вимоги виносимо в окремий список та відбираємо ті, що найчастіше зустрічаються, — це буде пріоритетом у вивченні (вимоги будуть, швидше за все, технічними, тому комунікаційні навички потрібно буде розвивати окремо);
- вивчаємо матеріал не до рівня «я все пам’ятаю», а до рівня «я розумію суть та необхідність» (компетентні інтерв’юери рідко запитують офіційні визначення, здебільшого вміння власними словами щось пояснити їх цілком влаштовує).
Майте на увазі, що через емоційне навантаження інтерв’ю спершу можуть видатись складними. Тому не переймайтесь невдалими першими співбесідами — це теж навичка, яку потрібно розвивати.
Книги та курси
Не рекомендую з першого дня брати товсті книжки. Вони дають глибокі та фундаментальні знання, але для початку достатньо буде й поверхневих. Важливо побудувати в себе в голові велику картинку того, як відбувається розробка та тестування, а вже потім заповнювати пробіли та заглиблюватись.
Почати можна з інтернет-ресурсів та відео з різних конференцій, після чого можна переходити на подкасти й блоги.
Безкоштовні ресурси, з яких можна почати:
- блог Brainual Tester;
- ютуб-канал QAGuild;
- ютуб-канал Radio QA;
- ютуб-канал GlobalLogicUkraine;
- Software Testing Help.
Для розширення світогляду та підвищення професіоналізму рекомендую також підписку на https://commited.tech/ (англомовний ресурс із вебінарами від найкращих світових експертів з тестування, де я, власне, теж проводжу вебінари).
Також важливою є профільна QA-сертифікація (найпопулярніша в Європі ISTQB). У мене є власні онлайн-курси з підготовки: базовий рівень Foundation та Advanced Level Test Manager.
Щодо прокачки комунікаційних навичок, то рекомендую почати з онлайн-курсу «Communicate like a PRO: навички професійної комунікації».
І трішки власної історії наприкінці
Ключовим моментом співбесіди на посаду QA Engineer у компанію GlobalLogic стало моє знання технічної області проєкту, для якого шукали фахівця. За освітою я інженер аудіо- та відеоелектроніки, а тестувати потрібно було рішення для ефірного мовлення, яке дозволяє інтегрувати 3D-анімацію у відеопотік. Тому я почув: «Ти знаєш предметну область, яку треба вчити 5 років, а тестуванню ми тебе навчимо за 5 місяців» і таким чином став QA-інженером.
Зараз, 10 років потому, я займаю позицію Quality Solutions Architect, і головними моїми обов’язками є проєктування та створення комплексних рішень із тестування, ведення технічних переговорів з клієнтами та керування центром експертизи з QA у представництвах GlobalLogic у Центральній та Східній Європі.
І загалом я та сама людина, яка вже 10 років працює в одній компанії і не бачить у цьому нічого поганого 🙂
Придивляєтесь до сфери ІТ?
Ми поговорили з айтішниками з GlobalLogic та розпитали про їхні будні. У підсумку вийшов надзвичайно крутий відеопроєкт IT WAKE UP — для тих, хто розмірковує, яку професію в ІТ обрати.
14 експертів із GlobalLogic без довгих нудних описів із ґуґла пояснюють, чим займаються щодня, що в них за професія та де їй можна навчитися. Обирайте цікаву професію та переглядайте відео за посиланням.
Шукаєте роботу в ІТ?
У нас на сайті багато вакансій в ІТ-компаніях для початківців і не тільки 👉
Вакансії
Читайте також
Як журналістка, жонглер та аналітикиня змінили професію й перейшли в ІТ
Як влаштуватися в IT-компанію: що писати в резюме та як поводитися на співбесіді
Фронтенд-розробниця — про роботу, стереотипи та перші кроки в ІТ
Дякуємо!
Тепер редактори знають.