Від Manual QAE до Universal QAE: масштабний технічний upskilling власними силами

💡 Усі статті, обговорення, новини про тестування — в одному місці. Приєднуйтесь до QA спільноти!

Всім привіт! Я Тетяна Ділягіна, L&D Manager R&D центру SQUAD. Займаюсь розвитком технічного навчання. Цей матеріал ми підготували разом із моїм колегою Ігорем Падалко, SDET Manager, який працює з Embedded QA та є ментором наших навчальних ініціатив.

Хочемо поділитися з вами досвідом створення комплексної програми з переходу від Manual QAE до Universal QAE, яка була реалізована в SQUAD силами внутрішньої експертизи.

Матеріал стане у пригоді L&D-менеджерам, QA-інженерам, SDET-фахівцям, а також керівникам технічних команд, які планують переведення Manual QAE до автоматизованого тестування або шукають ефективні підходи до технічного upskilling своїх команд.

Навіщо бізнесу інвестувати в універсальних QAE

Потреба мати в команді універсальних тестувальників, навички яких покривають значно ширше коло задач, окрім ручного тестування, зʼявилась з кількох причин:

  • Адаптація до умов ринку, який загалом рухається у бік автоматизації.
  • Забезпечення найвищої якості продуктів. Автоматизація дозволяє охопити більшу кількість тестових сценаріїв, забезпечує більш комплексне тестове покриття та виявлення помилок на ранніх етапах розробки.
  • Нові можливості кар’єрного зростання в межах QA без необхідності змінювати департамент.
  • Фокус на інновації. Ми працюємо в IoT-індустрії, що постійно розвивається. Тому нам важливо було дати можливість досвідченим інженерам з автоматизації зосередитися на складніших та креативніших задачах.

Основною метою розробки внутрішньої навчальної програми стало створення команди, яка могла б виконувати задачі нового рівня. Як підсумок, по завершенню навчання інженери без попереднього досвіду програмування мали навчитися писати, запускати та оновлювати автоматизовані тест-кейси на Python.

Додаткова ціль — створення умов для обміну знаннями та експертизою серед колег. Ми хотіли створити структуровану базу навчальних матеріалів, яка була б доступна всій команді 24/7. А також розширити менторський склад для підтримки QA-інженерів у вивченні автоматизації.

Необхідні навички при переході від Manual QAE до Universal QAE

Universal QA-інженери в SQUAD повинні мати знання з автоматизації тестування, на базовому рівні володіти мовою програмування, вміти інтегрувати нові автоматизовані рішення в наявну систему та активно працювати з різноманітними тестувальними сценаріями для покращення якості продукту.

Тому навчальну програму ми розробляли з акцентом на розвиток таких навичок:

  • Глибоке розуміння тестування, включно з типами, стратегіями та методами.
  • Розуміння продуктового контексту.
  • Знання мови програмування Python та вміння розробляти автоматизовані тести з використанням Pytest.
  • Робота з фреймворками автоматизації та розуміння основного процесу тестування Firmware.
  • Здатність аналізувати, інтегрувати та масштабувати автоматизовані рішення в загальний процес тестування.

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

Яким був дизайн програми

Програма складалася з чотирьох етапів:

  • Tests execution and analysis (2 місяці) — базовий етап, де студенти знайомляться з процесом виконання та аналізу результатів автоматизованих тестів. Головна мета — навчити основам роботи з наявними інструментами автоматизованого тестування.
  • Python & Pytest (3 місяці) — вивчення мови програмування та її застосування при створенні автоматизованих тестів. Це — необхідний етап, оскільки Python є основним інструментом для наших автоматизованих рішень.
  • Firmware test automation framework (2 місяці) — знайомство зі структурою фреймворку, що використовується на всіх проєктах, його основними можливостями та допоміжними інструментами.
  • Final project (1 місяць) — застосування здобутих знань у фінальному проєкті, що вимагає автоматизації функціоналу та його інтеграції в існуючу систему.

Протягом всієї програми студентів підтримували інструктори та ментори.

Інструктор — це експерт у конкретній темі. Він чи вона відповідає за підготовку навчальних матеріалів, проведення лекцій і Q&A-сесій, а також за оцінювання домашніх завдань в межах своєї теми.

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

Такий підхід дозволив нам створити ефективну систему підтримки для студентів і забезпечити справедливість в оцінюванні, а також оптимізувати навантаження для інструкторів та менторів.

Наш підхід до формату навчання та взаємодії між студентами базувався на п’яти ключових елементах. Коротко розглянемо кожен із них.

Сила внутрішньої експертизи

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

До того ж нам було важливо долучити колег, які не лише мають відповідні знання, а й прагнуть ділитися ними. У довгострокових програмах підтримувати початкову мотивацію нелегко: як з боку менторів, так і студентів. На щастя, в SQUAD (як у Гоґвортсі) — завжди готові надати допомогу тому, хто її попросить. Ми приділяємо багато уваги навчанню принципам менторства, knowledge sharing-у та залучення аудиторії.

Когнітивна доступність

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

Ми створили програму, що складалася з мікротем, кожна з яких дозволяла опанувати лише одну конкретну навичку чи інструмент. Для кращого засвоєння матеріалу використовували різні формати: відеоуроки, живі лекції та Q&A-сесії, вивчення проєктної документації, тести, практичні домашні завдання.

Всі активності та матеріали створювали наші колеги з нуля, враховуючи рівень учасників програми, який ми визначили ще на етапі відбору.

Людині потрібна людина

Поетеса Олена Матушек казала: «Людині потрібна людина». Ми взяли ці слова за основу підходу до навчання. Кожен студент отримав персонального ментора, до якого міг звертатися з будь-якими питаннями впродовж курсу чи то роботи над фінальним проєктом. Багато хто продовжує користуватись цією підтримкою й після завершення програми.

16-17 травня, Київ. Квитки тут!👇

Разом із матеріалами для самостійного навчання, ми зробили обов’язковими живі лекції та Q&A-сесії з інструкторами. Попри всі переваги e-learning, живий контакт допомагає утримати увагу, мотивує та будує довіру до спікерів, а це надважливо в довгострокових програмах. Бачити людину, чути її, отримувати зворотний зв’язок — усе це створює відчуття підтримки, таке потрібне в наш час.

Додатково функцію підтримки та моніторингу успішності виконує координатор L&D. Це — людина, до якої студент може звернутися з питаннями щодо графіка навчальної платформи, взаємодії з менторами та інструкторами, а також обговорити персональні виклики у навчанні. Координатор активно стежить за прогресом учасників, ініціюючи індивідуальні розмови, якщо помічає зміни в динаміці навчання. Це допомагає вчасно надати підтримку студенту та виявити зони для покращення курсу.

Навчайся і працюй

Опанування нової навички не відбувається за хвилину. Звісно, хотілося б мати можливість завантажувати інформацію, як у Матриці. Проте в реальності це не працює. Тож нам важливо було продумати оптимальне навантаження для наших студентів.

Ми оцінили, скільки годин може інвестувати в навчання студент, враховуючи робоче навантаження. Вийшло до 8 год на тиждень. У такий спосіб ми й групували матеріали, пропонуючи студентам йти згідно з графіком, у якому щотижня потрібно виконати певний обсяг завдань. Наприклад: 2 години на лекції та Q&A, 2 години на самостійне вивчення матеріалів, плюс 2-4 години для практики.

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

Створення рутини

Під впливом стресу важливо мати певну рутину в житті. До того ж QA-спеціалістам, через специфіку їхньої роботи, простіше мислити алгоритмами («чітко знаю, що, коли та де»). Так ми прийшли до графіка: щовівторка — лекція, четвер і понеділок — Q&A. Дедлайн для домашнього завдання — наступний вівторок після лекції. Канали комунікації — чітко визначені. Усі події та нагадування про дедлайни відображалися в календарях і чатах. Матеріали та ресурси зібрані на одній платформі. Таким чином фактори, що відвертають увагу, зведені до мінімуму.

Практичний фокус програми

Кожна тема програми супроводжувалася практичними домашніми завданнями, які допомагали студентам глибше опанувати матеріал і підготуватися до застосування знань у реальних робочих умовах. Завдання містили:

  • Написання коду.
  • Налаштування тестових середовищ.
  • Виконання тестів на реальних або симульованих пристроях.

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

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

Відповідність реальним потребам бізнесу. Презентоване рішення повинно закривати реальну потребу проєкту. Перед тим як подавати тестові сценарії на розгляд, студенти узгоджували їх зі своїми менеджерами.

Рівень складності. Фінальний проєкт був розроблений так, щоб стати логічним продовженням курсу: він мав об’єднувати інструменти та знання, отримані під час навчання, а також містити простір для додаткового навчання при його виконанні. Водночас завдання мало залишатися реалістичним і відповідати рівню студентів.

Для реалізації проєктів підвищеної технічної складності студентам дозволялося працювати в групах. У таких випадках оцінювання теж адаптували: група отримувала спільну оцінку за виконаний проєкт. Як бонус — студенти отримали досвід командної роботи в подібних задачах.

Критерії оцінювання. Проєкт оцінювався за трьома критеріями — якість коду, процес код-рев’ю та презентація.

Якість коду:

  • Стиль коду та відповідність конвенціям.
  • Використання інструментів та методів автоматизації.
  • Складність тестових сценаріїв.

Якість pull-реквесту:

  • Опис за шаблоном.
  • Робота з коментарями.

Презентація:

  • Чітка та ефективна комунікація.
  • Логічне та послідовне пояснення проєкту.
  • Часовий ліміт.

З якими викликами зіштовхнулись студенти

Курс був насичений великим обʼємом матеріалу, адже навчатись треба було з нуля. В автоматизації важливо не просто засвоїти низку нових інструментів, а й зрозуміти, як вони взаємодіють між собою. Враховуючи високий темп курсу та обмежений час, студентам доводилося дуже швидко адаптуватися.

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

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

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

Збереження мотивації протягом довготривалого курсу — це як підкорювати вершину. На старті є багато енергії та прагнення йти вперед, але з часом шлях ускладнюється, і доводиться долати все крутіші підйоми. Один зі способів підтримки мотивації — це чітке розуміння, що чекає на вершині, а також можливість оглядатися назад і бачити, скільки вже було пройдено. Щоб студенти не втрачали цей орієнтир, ми постійно нагадували їм про такі «картини майбутнього».

У цих точках важливо залучати менеджерів до обговорення цілей, очікувань та викликів студентів. Індивідуальні консультації, зворотний зв’язок і коригування курсу дозволяли студентам рухатися вперед, навіть коли шлях здавався важким.

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

Як ми мотивували та підтримували учасників курсу

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

Рішення ми знайшли в балансі гнучкості та дисципліни. Як це реалізовувалось на практиці:

Також важливим інструментом підтримки мотивації є контакт — професійний і людський. Студенти завжди могли звернутися до ментора, інструктора чи команди L&D, щоб отримати пораду, поставити запитання або поділитися ситуацією, яка створює труднощі чи обмеження. Ми допомагали не лише з технічними питаннями, а й підтримували у складні моменти, коли падала мотивація або виникали сумніви у власних силах.

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

Що ми отримали в результаті

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

А також:

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

Налаштували ефективний розподіл завдань між командами. Завдяки внутрішньому курсу команди SDET і QA краще познайомились, почали говорити однією експертною мовою і чітко розуміти, хто за що відповідає. При цьому інженери працюють над тест-кейсами, вже маючи на думці подальшу автоматизацію.

Збільшення кількості автоматизованих тестів дозволяє командам працювати швидше і звільняє час для виконання інших, складніших завдань.

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

Висновки

Аби всі учасники отримали задоволення від процесу і досягли мети навчання, варто дотримуватися кількох правил:

Навчання має бути доступним і структурованим. Розбийте матеріал на мікротеми, закріплюйте теорію практикою та використовуйте різні формати. Усі навчальні матеріали мають бути зібрані в одному місці, з чіткою структурою та зрозумілою навігацією, щоб студенти легко знаходили потрібну інформацію. Це допомагає засвоювати складні теми навіть у стресових умовах.

Ментори та підтримка — ключ до успішного upskilling. Призначте менторів, які допомагатимуть студентам не лише з технічними питаннями, а й мотивуватимуть їх. Регулярні зустрічі та координація з L&D-менеджерами значно підвищують шанси на успішне завершення курсу.

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

Гнучкість + дисципліна = успіх. Визначте чіткий графік лекцій, практик та дедлайнів, але залиште простір для адаптації під обставини. Так ви збережете мотивацію студентів і доведете їх до фінішу.

Розвивайте сильних фахівців і створюйте навчальні продукти, що відкривають нові можливості для людей та бізнесу — нехай у вас все вийде, а наші поради в цьому допоможуть!

👍ПодобаєтьсяСподобалось5
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Займався ручним тестуванням, вивчив і автоматизацію. Роблю і те, і інше. Плутаюся ким себе називати? General QA Engineer чи може QA Automation Engineer. А тут вигадали нове слово Universal )

Підписатись на коментарі