Ми вже писали про професію QA-інженера, яка вважається однією з ключових для входу в ІТ. А як щодо QA automation engineer — які знання необхідні для опанування цієї професії? Розпитали Soft Engineer компанії SimCorp Інесу Сторожеву, що таке автоматизоване тестування і в чому його відмінність від ручного.
Про шлях у професію
Я навчалася на спеціальності «Комп’ютерна інженерія» у НТУУ «КПІ імені Ігоря Сікорського». Коли після 4-го курсу постало питання працевлаштування, свій вибір зупинила саме на тестуванні — ця сфера здавалася простішою за розробку. Але зараз я розумію, що це не зовсім так. Тестування — дисципліна, що весь час змінюється: з’являються нові сценарії та інструменти, які необхідно постійно вивчати, аби зростати професійно.
У підсумку я влаштувалася QA automation engineer у компанію SimCorp, де працюю вже повних 8 років.
Співробітники SimCorp в середньому працюють у компанії 5 років, а 15% — понад 14 років. Дізнайтеся, чим так приваблює SimCorp 👉
Читати
Хто такий QA automation engineer
QA automation engineer — це фахівець, який займається забезпеченням якості продукту відповідно до стандартів і специфікацій. Він залучається в усі процеси девелопменту (від підготовки стандартів, вимог і планування до безпосередньо розробки продукту), розробляє стратегію тестування, проводить ручне тестування та пише автотести, рапортує про проблеми та стежить, аби їх вчасно виправляли.
Це людина, яка має постійно тримати руку на пульсі — від початку розробки й до релізу продукту: розуміти, що, де та як відбувається, і якісно супроводжувати процес. Ця роль передбачає багато комунікації: постійна взаємодія з девелоперами є запорукою успішної роботи, тому QA точно не сидить весь день сам на сам із предметом тестування.
Тож якщо вас цікавить сфера ІТ, ви любите й умієте конструктивно спілкуватися — вам сюди 😊
QA інженер може залучатися до процесу роботи над продуктом лише в кінці. Але тут питання: наскільки це буде ефективно? Коли ти активно береш участь у процесі від самого початку, то знаєш специфіку продукту й критичні моменти, на які необхідно звертати увагу.
Чим QA automation інженер відрізняється від ручного (manual) тестувальника? Якщо коротко — тільки тим, що останній не пише автотести, тож йому часто потрібно повторювати свій тест вручну для певного функціоналу, який може бути «слабкою ланкою». Тобто ти вже знаєш якісь проблемні моменти продукту, але щоразу перевіряєш їх фактично з нуля. Тут буде доречною автоматизація, і одним із завдань QA automation інженера є написання тест-сценаріїв, які будуть запускатися за необхідності. За допомогою автотестів можна запрограмувати сценарії, які фізично неможливо повторити вручну, або ж порівняти мільйони рядків даних не помилившись.
Тут з’являється своя рутина — контроль результатів цих автотестів, їх коригування за потреби, налаштування та підтримка середовища виконання тестів.
Що входить в обов’язки QA automation engineer?
Зазвичай робочий процес містить наступні складові.
- Обговорення планів і деталей роботи над функціоналом. QA інженерам дуже важливо бути присутніми на таких зустрічах, бо інші спеціалісти можуть не врахувати певні нюанси нашої роботи або ж ми в майбутньому можемо прогавити важливі моменти.
- Розробка та затвердження тест-стратегії.
- Тут також присутній ручний тест: перш ніж сідати за написання автотестів, потрібно сісти і вручну перевірити функціонал, продумати сценарії, розробити так званий road map (план) тестування.
- Написання автотестів.
- Контроль та аналіз результатів прогону автотестів, рапортування про знайдені проблеми. Одночасно може бути активна не одна версія продукту, а й ще декілька попередніх релізів. Це означає ще кілька альтернативних сценаріїв одного і того самого тест-кейсу.
- Коригування вже існуючих автотестів – часто їх необхідно доопрацьовувати відповідно до прогресу роботи (відповідно до розширення функціоналу чи зміни вимог).
- Багато комунікації з колегами 😊
Плюси та мінуси роботи QA automation engineer
Плюси | Мінуси |
➕ Можливість працювати з новими технологіями, програмувати, розвиватися, не стояти на місці. | ➖ Бувають періоди, коли доводиться виконувати багато рутинної роботи: описувати проблеми та підтримувати старі автотести, і з часом кількість задач із підтримки зростає. |
➕ Переважно гнучкий робочий графік. | |
➕ У залежності від задач можна перемикатися між ролями розробника і тестувальника. Це допомагає всебічно оцінювати новий функціонал для його майбутньої перевірки. | |
➕ Простір для креативу — можливість обирати, як і чим тестувати. |
Що має знати QA automation engineer: hard і soft skills
В усьому ІТ-світі зараз зростає потреба саме в QA automation, тож є сенс у тому, щоб не зупинятися на ручному тестуванні, якщо ви його вже опанували, а рухатись далі.
Hard skills
Для входу в професію QA automation інженеру обов’язково потрібні hard skills. QA automation спеціаліст має розумітися на особливостях розробки й вміти програмувати.
Крім того, потрібно:
- бути знайомим із теорією тестування;
- мати базові знання технологій і мови, якою ведеться розробка;
- знати, що таке система контролю версій (Git), і вміти з нею працювати;
- якщо компанія дотримується певної методології розробки (наприклад Agile), необхідно розуміти її основні принципи.
Soft skills
Робота QA інженера потребує стратегічного та аналітичного мислення, хорошої пам’яті та зібраності (бо часто треба тримати в голові кілька паралельних задач і вміти швидко змінювати фокус). Також не зайвим тут буде творчий підхід до роботи.
Загалом робота доволі специфічна: з одного боку, ти багато працюєш сам на сам із лептопом, а з іншого — є багато комунікації з колегами. Поширена думка, що більшість IT-спеціалістів — інтроверти. Думаю, це точно не про QA інженера, бо тут потрібно бути соціально активним і часто підключати свої комунікативні вміння, аби пояснити розробникам чи іншим колегам проблему та знайти ефективне компромісне рішення.
Втім, якщо основне, що подобається в роботі, — це комунікація і взаємодія з людьми, тоді краще, певно, придивитись до інших професій.
Кар’єрні перспективи: як і куди може рости QA automation engineer
З огляду на запит на автотестування, це область, яка дає можливість не лише професійно розвиватись, а й претендувати на гідну заробітну плату.
QA automation інженер може отримувати на 50% більше, ніж тестувальник, який не пише автоматизацій, оскільки QA automation спеціалісти повинні мати навички розробки. Також на рівень заробітної плати впливає мова програмування / технології, наявність чи відсутність знань HTML, SQL, CSS. Наприклад, робота QA automation інженера зі знанням C# коштує дорожче, бо попит на таких спеціалістів високий.
Але перелік вимог до кандидата більше залежить від специфіки продукту й загалом компанії — те, що цінується однією, може зовсім не мати значення для іншої.
Я почала роботу в SimCorp із 500$, а зараз стартова зарплата для QA-інженерів зросла майже вдвічі — і це ще не межа. Подальший ріст заробітної плати можна переглянути на DOU або djinni — вони дають плюс-мінус достовірний зріз ринку.
Скільки заробляє QA automation engineer?
Ми дослухались до поради Інеси й переглянули медіани зарплат українських автотестерів в останньому дослідженні DOU (літо 2021 року).
Junior QA automation engineer
850$
Middle QA automation engineer
2500$
Senior QA automation engineer
3700$
QA automation teach lead
4250$
Кар’єрний розвиток у професії
QA інженер може вирости до техліда, тестліда, тімліда, QA Manager. Можна трохи змістити фокус з тестування і стати продакт оунером, скрам-майстром чи розвиватися більше в технічному напрямку та безпосередньо розробці й стати девелопером.
Після кількох років на одній позиції в компанії мені стало цікаво спробувати себе в девелопменті. Певний час було дуже захопливо, але потім я зрозуміла, що «ламати» мені подобається більше, ніж «будувати», і повернулася назад у тестування.
Ті, кого цікавить менеджмент чи коучинг, можуть спробувати себе в ролі Development Manager, People Manager чи Release Train Engineer, який контролює роботу скрам-майстрів.
Загалом можу сказати, що QA — дуже класний напрям для горизонтального розвитку, поглиблення своїх знань, опанування нових технологій і мов програмування.
Як стати QA automation engineer
Як я й казала, для входу в професію необхідні певні hard skills. Їх може дати технічна освіта, котра дає хороший старт у професії попри те, що не є обов’язковою. Або самоосвіта — за умови, що ви маєте для неї достатньо часу, бажання та мотивації.
Коли я навчалася, у нас було програмування та інші профільні предмети, але не було дисципліни, пов’язаної з тестуванням. Це був мій вибір, тож я сама шукала інформацію. Сьогодні є багато ресурсів та курсів, інформації з яких достатньо для опанування сфери тестування.
За відгуками знаю, що є непоганий курс на Prometheus про те, як почати в QA («Основи тестування програмного забезпечення» — прим. ред.). Хоча в мене жодного разу на інтерв’ю не питали про те, які курси я закінчила за спеціальністю чи які сертифікати маю. Увагу звертають все ж на знання, розуміння сфери, на досвід. Тому курси точно не варто сприймати як чарівну пігулку.
Аби розвиватися у цій сфері, потрібно відслідковувати нові тренди, шукати ресурси для самоосвіти, підписуватися на експертів у галузі. Для початківців можу порадити матеріали авторства Романа Савіна — вони легко написані та прості для розуміння. Свого часу його книга «Тестирование dot com, или Пособие по жестокому обращению с багами» мені дуже допомогла розібратися, як працює тестування. Читання більш технічних книг корисне, коли ти вже розбираєшся у сфері та маєш практичний досвід.
Шукаєте роботу в ІТ?
У нас є багато вакансій для технічних і нетехнічних спеціалістів 👉
ВакансіїЧитайте також
Світчери в ІТ: як почати кар’єру, якщо ви працювали в інших сферах
Як влаштуватися в IT-компанію: що писати в резюме та як поводитися на співбесіді
Професія ІТ-рекрутер
Дякуємо!
Тепер редактори знають.