Блог

Як стати успішним тестувальником в IT? Поради для новачків

Про тестувальника є багато міфів і стереотипів, у які легко повірити. 

Спілкуючись зі знайомими (не лише з IT), я визначила 6 хибних уявлень:

  • Робота тестувальника нудна й однотипна. Але насправді тестувальник взаємодіє з усіма відділами, які працюють над створенням і покращенням IT-продукту (навіть тоді, коли продукт є лише в документації). Тому його задачі різносторонні та часом потребують як аналітичного, так і творчого мислення. 
  • Професія тестувальника лише для людей з технічною освітою. Ні й ще раз ні. Уже майже рік я є лектором в освітньому проєкті для новачків в IT CharAcademy і бачила, що тестуванню можуть навчитися люди абсолютно різних професій (вчителі, лікарі, хіміки, бухгалтери тощо), і вони справляються зі своєю роллю не гірше, аніж люди з технічною освітою. Серед них, до речі, часто наші найкращі випускники.
  • Тестувальнику потрібно знати мову програмування. Мануальному тестувальнику не потрібно володіти навичками написання коду, для нього важливо бути уважним та знаходити дефекти в продукті який він перевіряє.
  • Робота тестувальника не є серйозною. Особливо цей міф відноситься до тестувальників в геймдеві. Більшість людей, коли я кажу, що працюю QA Engineer в геймдев-компанії, думають, що я цілими днями проходжу рівні та натискаю на елементи гри з надією, що щось зламається. Але ця робота надзвичайно відповідальна та серйозна. Тестувальник повинен володіти аналітичним мисленням, знати теоретичні засади тестування та вміти використати їх на практиці.
  • Тестувальником стати дуже легко. Зазвичай, так думають люди, які ніколи не пробували тестувати — вони вважають, що не потрібно ніяких особливих знань чи креативного підходу. Проте усі тестувальники знають, що це міф. Недаремно є така кількість курсів, безплатних марафонів, воркшопів. Це все потрібно, щоб відточувати майстерність.
  • Тестування — монотонна робота. Ще один стереотип, адже існує багато різних варіацій, чим тестувальник може займатися, і ці процеси дуже різні. Скажу з власного досвіду — я вже 3 роки працюю на цій позиції й жодного дня мені не було нудно. Напевно, все також залежить від того, чи займаєтесь ви улюбленою справою.

Хто такий тестувальник насправді

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

Базова робота тестувальника:

  1. Аналіз продукту, виконання певних сценаріїв тестування і пошук багів.
  2. Написання спеціальних звітів, за якими програмісти усувають помилки. QA-інженер працює над тим, щоб до користувача потрапило якомога менше усіляких неточностей, дефектів і явних багів. 
  3. Налаштування усіх процесів так, щоб помилки не з’являлися, забезпечення якості продукту ще на етапі його створення.

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

  1. Комунікує з Business team або клієнтом, якщо це аутсорс. Аналізує й уточнює вимоги, чи всі вони можливі до виконання. 
  2. Вибудовує та планує процес тестування. Як ми тестуємо, коли ми це робимо, яка нам потрібна документація, щоб все відповідало стандартам.
  3. Оптимізовує процеси, займається тим, щоб проєкт, над яким він працює, розвивався і показував позитивну динаміку. 
  4. Ідентифікує проблеми. Тестувальник намагається зробити нашого користувача задоволеним.

Також, якщо починаєш шукати якусь інформацію про тестування, натикаєшся на 3 поняття, які варто розуміти: Quality Assurance, Quality Control, Quality Management. Поясню:

  • Quality Assurance — забезпечення якості продукту. Це класичний тестувальник, про якого ми зараз говоримо, це про те, як запобігти виникненню проблем.
  • Quality Control — контроль якості продукту. Багато хто думає, що це поняття тотожне тестуванню, але це невірно, хоч QC — це і частина QA. QA забезпечує передбачуваність і правильність процесів, а QС контролює дотримання вимог.
  • Quality Management — управління якістю продукту. Це вже про менеджмент організації роботи щодо якості IT-продукту.

Soft Skills і Hard Skills: що потрібно знати

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

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

  1. Швидко знаходити потрібну інформацію.
  2. Вчитися та ставити влучні питання.
  3. Сприймати та аналізувати велику кількість даних. 
  4. Комунікувати з людьми різних сфер. Тут поясню. На відміну від розробника, тестувальник має взаємодіяти майже з усіма учасниками процесу розробки. Він спілкується з дизайнерами, UX-спеціалістами, проджект-менеджерами, зі своїми колегами з QA-відділу, з тими ж девелоперами. Тестувальник має узгоджувати всю інформацію, щоб уникнути проблем в продукті на ранніх етапах. Без комунікації досягти цього неможливо. Варто ще додати, що тестувальник має повідомляти команді, що в продукті є помилка, що чиясь робота виконана не так, як хотілося б, тому потрібно доносити інформаційно правильно, щоб ніхто не ображався.

Ще хочу сказати про перфекціонізм. Якщо ви постійно помічаєте якісь недоліки в речах, які вас оточують, бачите незручне, що можна зробити кращим, то ви вже несвідомо займаєтесь тестуванням. Моя думка, що в QA-сферу гарно вписуються люди, які по життю перфекціоністи. Ця професія допоможе цього перфекціоніста вивільнити. 

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

Хард скіли — це професійні навички. Основні знання, які повинен мати кожен QA-початківець:

  1. Розуміння життєвих циклів продукту (SDLC, STLC, issue life cycle).
  2. Розуміння процесів і підходів до розробки (Agile, Scrum, Kanban).
  3. Розуміння того, як працювати з документацією продукту (створення тестової документації, вміння складати баг-репорти). 
  4. Уявлення про вебтестування та тестування мобільних застосунків, серверної частини (API), баз даних (SQL).
  5. Знання різних видів і технік тестування (functional, performance, usability, etc.)

Зрозуміло, що якщо ви тільки починаєте свій шлях в IT, то усі ці слова будуть видаватися вам незрозумілими й дивними, але як тільки ви закінчите якийсь курс (або ще краще — потрапите на стажування), то все стане на свої місця. 

Це питання, без яких не проходить жодна співбесіда. Якщо у вас немає практики, то у вас має бути хоча б теоретичне уявлення про усі ці речі. Без цих технічних знань неможливо почати свій шлях. Це основа основ. 

Кар'єрний ріст тестувальника. Рівні кваліфікації

Не буду тут про зарплати, інформації про це в інтернеті багато. Хочу поговорити про кар’єрний ріст тестувальника, опираючись на те, що розповіла вище.

Якщо ви потрапили на позицію QA Trainee або QA Junior, то з часом ваш рівень кваліфікації буде зростати. Ще коли я починала працювати, то думала лінійно — зараз я Junior, потім буду Middle, потім Senior. Але на практиці дещо не так.

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

Якщо ж казати про класичний розвиток QA-інженера, то я б радила так — якщо у вас сильні софт скіли, то рухайтеся в напрямку менеджерської позиції (QA Lead) або у відділ аналітики, якщо сильні хард скіли — рухайтесь далі до QA Senior. Для себе я обрала саме такий шлях.

Чи варто розпочинати свій шлях в QA-сфері? Поради для новачків

Я вважаю, що варто. Мені особисто ця професія дуже подобається, тому що тут є:

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

І декілька порад для новачків:

  • Пишіть у резюме лише правду.
  • Якщо ви отримаєте відмову — просіть розгорнутий фідбек, це допоможе вам стати кращими.
  • Доповніть резюме супровідним листом.
  • Обов’язково вмикайте камеру на онлайн-інтерв’ю.
  • Ніколи не забувайте про самонавчання і власний розвиток.

І з чого почати. Прочитайте будь-яку з цих книг на ваш вибір. Усі вони прекрасні. Ідеальний початок:

  • Практичний посібник по дизайну тестів (Лі Коупленд)
  • Як тестують в Google (Джеймс Уіттакер)