Щоб тестувальники-початківці й тестувальники з невеликим досвідом рідше стикалися з відмовами на інтерв’ю та мали більше перспектив при працевлаштуванні, я вирішив окреслити актуальний і потрібний скілсет для QA-фахівців. Він стане в пригоді всім, хто прагне подивитися на роль тестувальника не лише з погляду кандидата, а й зі сторони компанії-роботодавця.
Розвінчуємо поширені стереотипи про початок кар'єри в QA
- Професія тестувальника має один із найменших порогів для переходу в IT. Тож для працевлаштування достатньо пройти профільні курси або отримати сертифікацію ISTQB. Це варто розцінювати не як реалії висококонкурентного ринку, а радше як поширений маркетинговий хід від навчальних центрів і приватних шкіл. Адже під час наймання сертифікати про проходження курсів відіграють, як правило, найменшу роль — насамперед цінуються практичні навички й уміння.
- Достатньо наважитися свічнутися, підтягнути загальні знання і навички в QA, а в компанії вже всього іншого навчать. У певних робочих ситуаціях ментор дійсно допоможе з настановами та інструкціями. Однак у цілому цей підхід хибний. Бо, по-перше, лімітує можливість початківцю реалізуватися, використовуючи свої сильні сторони й потенціал. А по-друге, компанія-роботодавець очікує від кандидата ініціативності та самостійності відповідно до поточних робочих завдань.
- Є можливість отримати «дорожню карту» з чітко визначеним кар'єрним зростанням. Часом інтерни на співбесідах просять зорієнтувати щодо термінів, яких має бути достатньо для здобуття нових рівнів компетентності в межах компанії — Junior, Middle, Senior. Однак кар'єрне просування визначається не часовими рамками, а зоною відповідальності та досягненнями, які приносять користь бізнесу.
- Побутує думка, що розробники апріорі краще розуміються на архітектурних рішеннях додатка або системи. І тестувальники не висловлюють своєї критичної думки щодо обраної архітектури з поваги до авторитету розробника. Утім, маючи релевантний досвід і розуміючи специфіку тестувальницького аналізу, QA-спеціалісти повинні проговорювати такі моменти й аргументувати свою позицію. Це убезпечить команду від неефективних рішень і мінімізує масштабні доопрацювання.
Практичні якості та навички QA-спеціалістів, які дійсно мають значення для IT-компанії
Хоча фундаментально роль тестувальника залишається незмінною, вимоги до QA-фахівців із кожним роком зростають. Приміром, автоматизовані рішення, якими можна було вразити у 2010-х, сьогодні вважаються базовим функціоналом. Постійна еволюція технологій і високий попит на професію призвели до того, що розпочати кар’єру тестувальника й успішно в ній реалізовуватися стає все важче. Проте все одно можливо: за умови розвитку потрібних IT-ринку навичок і компетенцій.
Розглянемо детальніше, який практичний скілсет Skylum як компанія-роботодавець радить покращувати майбутнім тестувальникам і Junior-спеціалістам.
Базові знання: теорія тестування та технічні навички
Це ті компетенції, що необхідні спеціалісту для виконання всіх поточних завдань. Теорія тестування не так важлива під час проходження співбесіди, скільки потрібна і повсякденній роботі. Що якіснішими та більш глибинними знаннями володіє спеціаліст, тим краще він працюватиме з продуктом. Це той тип навички, який можна «відточити», якщо багато читати, дивитися приклади та розвʼязувати завдання. Водночас варто взяти за звичку перевіряти таку інформацію з відкритих джерел, аби засвоювати й використовувати коректну термінологію.
Щодо технічних навичок, потрібно розбиратися в основах ІТ. Наприклад, розуміти, як працює браузер, розуміти специфіку браузерного кешу чи IP-адреси. Це індикаторні поняття, які відразу показують, чи має кандидат потенціал для зростання в ролі тестувальника. Крім того, треба бути готовим, що залежно від типу продукту можуть знадобитися більш специфічні знання, такі як Content Delivery Network чи Load Balancer. Загалом, без цих компетенцій фахівцю буде складно виконувати потрібний пул задач.
Аналітичний і математичний склад розуму
Професія тестувальника — насамперед технічна, вона включає роботу з формулами, рядом чисел, прорахунками тощо. Тож, по-перше, потрібно бути зацікавленим у тому, щоб знаходити певні залежності, на основі яких формуватимуться передбачення. А по-друге, потрібно в цьому досить глибоко розбиратися.
З досвіду, саме ці характеристики покращити досить складно, адже вони закладаються впродовж навчання у школі й університету. Утім, якраз їх здебільшого інтерв’юери й шукають під час співбесід: зокрема, просять розв’язати кілька математичних і логічних завдань. Якраз ці якості є індикатором того, наскільки глибоко та якісно тестувальник здатен зануритися в аналіз функціоналу додатка, який перевірятиме.
Здатність подивитися на завдання з позиції проджект-менеджера
Тобто не просто братися за розв’язання певного завдання, а виконувати її з розумінням кінцевої мети та важливості для загального результату. Чимало зустрічав просунутих технічних фахівців, які ставляться до виконання завдань досить формально, без контекстного аналізу — що було до цієї задачі, які можуть виникнути проблеми при її реалізації, чи потрібно взагалі її виконувати. Вчасно поставлене тестувальником питання «навіщо?» в контексті поточних завдань від керівника чи менеджера проекту може зберегти ресурси команди і, найголовніше, — унеможливити допущення серйозної помилки в розробці продукту.
Особистісні якості: наполегливість, відповідальність, кмітливість і справжня уважність до деталей
Наполегливість проявляється в пошуку потрібного рішення, навіть якщо задача видається складною. Коли команда витратила час, зусилля й ресурси на виконання певного обсягу роботи, результат точно має бути. Формулювання «не вийшло» не підходить: воно не влаштує команду, executive board чи власників бізнесу. Важливо продовжувати докладати зусилля, експериментувати та попри невдачі шукати альтернативи. До речі, наполегливість важливо демонструвати й під час проходження співбесіди. У цьому розрізі показовими можуть бути завдання, де кандидату потрібно запропонувати різні варіанти перевірок — і якраз показати, наскільки широко він бачить проблему. І відповідно, пропонує різноманітні шляхи, які протестував би.
Відповідальність насамперед відображається в підходах до тестування продукту. Найкраще виконувати свої обов’язки з позиції єдиного тестувальника на проекті: «Якщо я не знайду помилок, то їх не знайде ніхто». Помилково розраховувати на підстраховку й думати, що за потреби «коли не я, то колеги точно знайдуть баги».
Така риса, як кмітливість, може видатися банальною, втім, на співбесідах вона часто стає індикатором щодо сумісності кандидата і компанії. Виявити її можна і за характером спілкування, і через розв’язування логічних завдань. Цінується навіть не швидкість думки, а її глибина. Якщо кмітливість не розвинута на високому рівні, то в робочому потоці спеціаліст не зможе достатньо якісно перевірити всі аспекти програмного забезпечення та передбачити варіанти проблем, які можуть виникнути у користувачів.
Кандидати у своїх у резюме полюбляють вказувати дві персональні риси: уважний до деталей і швидко навчаюся. І це чудові характеристики, якщо вони мають місце у житті, а не залишаються мовленнєвими зворотами.
Тестувальник апріорі має бути уважним до деталей і постійно вдосконалювати цю навичку, не лише фіксувати її «на папері». До слова, досвідчені інтерв’юери-тестувальники звертають увагу в резюме на цей пункт і можуть поставити уточнюючі питання, щоб виявити, чи дійсно зазначена уважність відповідає дійсності. Тож варто бути надзвичайно пильним до деталей і бути готовим до того, що уважність перевірятимуть на простих життєвих прикладах.
Так само з умінням швидко вчитися. Хочеться відразу поставити уточнююче питання: «З ким доводилося порівнювати цю швидкість: з однокурсниками, колегами чи друзями?». Без сумнівів, це корисна навичка, яка показує адаптивність спеціаліста та готовність брати на себе певні виклики. Проте не варто нею надмірно зловживати. До того ж швидкість у роботі тестувальника не завжди є визначальною. Спеціаліст може на достатньому рівні виконувати задачі швидко. Але так само він може бути й уповільненим у роботі, вирішуючи складніші й більш комплексні завдання. Тому швидкість сама по собі досить умовна характеристика.
Комунікативні здібності
Робота тестувальника передбачає і командну взаємодію, і співпрацю з іншими департаментами компанії. Уміння вести конструктивний діалог, етично спілкуватися й аргументовано доводити свою думку допомагає досягати кращих результатів роботи.
Розвинутість цієї якості, до речі, легко перевіряється на інтерв’ю — під час діалогу із кандидатом. Інтерв’юер звертає увагу на те, як кандидат вміло формулює власну думку: наскільки вона лаконічна, зрозуміла і чітка, тактовна і в цілому «зріла».
Англійська
Її потрібно підтримувати на такому рівні, який дасть змогу розширювати багаж знань і за потреби спілкуватися з міжнародними командами. Без англійської тестувальники суттєво обмежені в доступі до передових наукових статей і практичного досвіду іноземних спеціалістів.
Автоматизація
Автоматизоване тестування — обов’язкова складова QA. Утім, не варто ставити автоматизацію за самоціль, бо виникає ризик «потонути» в автотестах і працювати не над глобальною задачею «що потрібно перевірити?», а над тим, щоб код технічно виконався. Мистецтво автоматизації полягає в тому, щоб використати її як інструмент для досягнення більшої задачі. Це завжди лише частина перевірки. І вона є окремим етапом в ланці послідовних перевірок сценарію, що має працювати.
Насамкінець раджу всім тестувальникам заглиблюватися та розвиватися саме в практичній площині.
QA-фахівцям, які вже працюють, це зробити просто: детально розбирати всі завдання, які попадають у статус тестування. Це безпрограшна стратегія. Вона вже включає й розв’язання актуальних проблем в тестуванні ПЗ, і генерування нових ідей щодо покращення якості тестування.
Тестувальникам-початківцям також варто вчитися на реальних прикладах і кейсах. Почати можна, приміром, з аналізу наближених до тестування задач по взаємодії з різнотипними додатками — банківськими, туристичними, навігаційними тощо. Також доцільно розв’язувати віддалені від IT, але досить життєві та практично орієнтовані завдання: наприклад, розрахувати час нагрівання води у мікрохвильовці, якщо відома потужність електроприладу; або визначити, з чого складається той самий стілець та як його можна розкласти на компоненти.
Це важливо, бо інтерв’юер під час наймання має насамперед зрозуміти, як кандидат застосовуватиме свої знання на реальних кейсах: із якими завданнями працював, яких результатів досяг і на які труднощі натрапив під час роботи чи дослідження. На мій погляд, практичний досвід принесе значно більше користі для QA-фахівця, ніж теоретичні знання, здобуті на форумах чи в YouTube.
Підсумовуючи, ціль кандидата під час проходження співбесіди — продемонструвати, що його навички достатні для того, щоб працювати з поточною складністю продукту в компанії. Відповідно, аргументами такого переконання найкраще виступають практичні приклади, які можна навести з власного досвіду. Своєю чергою інтерв’юер намагатиметься «перенести» ці приклади на майбутні потенційні завдання та врешті-решт оцінить, чи відбувся потрібний для компаній метч.