Fullstack QA — путь самурая, или раскрытие потенциала тестировщика

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Специалисты fullstack QA весьма востребованы работодателями. В сегодняшней статье расскажу, в чем ценность таких сотрудников, какие hard и soft skills нужны и почему будущее именно за fullstack QA.

Всем привет, меня зовут Максим Соловьев, я Head of QA продуктов BI‑аналитики, ML и EPM Polymatica в компании SL Soft. Работал в разных командах величиной от 2-х до 20-ти человек как в коммерческих организациях, где не было документации, так и в серьезных государственных компаниях. Также довелось побывать единственным QA на проекте. Получил большой опыт: от тестирования баз данных, брокеров сообщений и различных интеграций до тестирования UX, производительности и написания сквозных автотестов. Начинал с позиции джуна, вырос до лида с собственной командой и своими процессами — сейчас являюсь servant leader отдела QA.

Окунемся в историю и эпоху зарождения)

В 2017 году для входа в профессию «ручной тестировщик» мне хватило культовой книги Романа Савина «Тестирование Дот Ком» и базовых навыков SQL, кек. Сейчас, конечно, этого уже недостаточно: с развитием технологий и повышением требований к качеству программного обеспечения планка для специалистов QA неизменно поднимается.

Уже в 2019 году работодатели ожидали, что QA не только владеет рядом инструментов тестирования и базово освоил языки программирования и фреймворки, но и понимает, как создается софт, разбирается в архитектурных особенностях системы и умеет правильно коммуницировать с другими людьми — как с коллегами, так и с клиентами (пруф). При поиске тестировщиков‑автоматизаторов компании сталкивались с тем, что кандидаты умеют «тестировать ручками», но не заботятся о чистоте тестового кода и не имеют опыта хороших практик.

Дальше — больше. Интересно, что увеличивается не только перечень требуемых hard скиллов, но и soft, причем они потихоньку наращивают свою важность при выборе кандидата. Для тех, кто хочет углубиться, — подборка соответствующих материалов: два года, год, полгода назад.

Тенденции QA неразрывно связаны с трендами в разработке: все направлено на сокращение time‑to‑market. В 2010-х годах в IT‑индустрии произошла своего рода революция: гибкие методологии вытеснили классические, и этого бы не случилось без адаптации и ускорения циклов тестирования. С тех пор ставки на автоматизацию и универсализацию сотрудников QA повышаются. Ведутся споры, останется ли ручное тестирование актуальным (спойлер: да). Пример — вот эта статья, где есть примечательная фраза:

76% QA специалистов сейчас так или иначе вовлечены в процесс автоматизации тестирования. Это означает, что грань между автоматизацией и ручным тестированием еще больше размывается, и в ближайшие годы это разделение станет менее заметным. Одними из самых востребованных QA специалистов будут те, кто обладает навыками, важными для двух этих направлений, и могут эффективно управлять всеобъемлющим процессом тестирования. 

Еще годную профессиональную статистику по теме можно найти тут.

Я полностью согласен с описанными трендами: чтобы быть успешным QA, требуется постоянное повышение своей квалификации, освоение нового инструментария и современных подходов. С опытом работы приходит понимание, что fullstack QA — это логичное профессиональное развитие.

Актуальные требования к fullstack QA 

Fullstack QA — это профессионал, который обладает широким спектром навыков в области мануального и автоматизированного тестирования на разных уровнях, о чем подробно рассказано тут и тут. Поэтому такой специалист обеспечивает высокое качество продукта. А еще оптимизирует работу (например, определит, где сразу стоит написать автотест, чтобы при нескольких итерациях в тестировании не обременять себя рутиной), сделает ревью кода разработчика, выдаст замечания по документации аналитика и составит список недочетов прототипа дизайнера.

Требования к навыкам fullstack QA обширные, но справедливости ради замечу, что они актуальны для любого QA‑специалиста как в части hard, так и soft скиллов. Технические: знание языков программирования, баз данных, ОС/систем виртуализации, непрерывной интеграции, инструментов и методов разработки и тестирования, в том числе и базовые знания по теории тестирования. Soft скиллы: умение адаптироваться к изменениям, стрессоустойчивость, внимательность, усидчивость, способность к эффективной коммуникации с различными членами команды разработки и тестирования.

Итак, востребованный fullstack QA имеет как высокий уровень технического мастерства, так и развитый эмоциональный интеллект. Плюсом становится широкий спектр знаний и навыков в смежных областях, связанных с разработкой, техподдержкой, DevOps, работой менеджера проекта и системного аналитика. А еще ты немножко лидер и иногда психолог. Такой винегрет позволяет быть ценным специалистом, действительно повышать уровень качества продукта на всех этапах SDLC, в том числе, и работая над процессами в компании в целом.

Какую пользу может принести fullstack QA

Оптимизировать работы по тестированию

Одна из ключевых компетенций специалистов fullstack QA — оптимизация работы: тут нужно умение эффективно тестировать приложения на различных уровнях, начиная с модульного и заканчивая автоматизированным E2E тестированием. Постоянная интеграция деятельности тестировщиков с разработчиками с помощью инструментов CI/CD позволяет выявлять потенциальные проблемы и ошибки раньше, чем «код попадет на дев». Таким образом, оптимизация повышает качество и надежность продукта. А для специалиста это означает возможность сосредоточится на нефункциональных требованиях к ПО.

Улучшить анализ влияния (impact analysis)

По сути это способность понимать, как изменения в коде или приложении могут повлиять на другие компоненты продукта. Fullstack QA обладают необходимыми навыками и инструментами для улучшения анализа влияния, что позволяет эффективно выявлять потенциальные проблемы и ошибки и предотвращать их возникновение.

Ускорить анализ основной причины (RCA)

QA fullstack специалисты должны быть способны эффективно и быстро определить источник проблемы, ускорить процесс RCA и сократить время, необходимое для устранения проблемы.

Написать качественный код — «уровня разработчика»

Кроме знания git, sql и языка программирования для fullstack QA важно понимание основных принципов разработки программного обеспечения и ключевых понятий, например, что такое модульность, инкапсуляция, наследование и полиморфизм, а также умение работать с тестовыми фреймворками.

Использовать AI как инструмент для тестирования и совершенствования процессов

Одной из актуальных тенденций в тестировании является применение искусственного интеллекта для ускорения процесса автоматизации в разы, а также для улучшения его эффективности. Чем может помочь AI: увеличение тестового покрытия, генерация кода и тестовых данных, обучение сотрудников (в том числе, и при изучении языков программирования), раннее выявление дефектов (анализ документации и статический анализ кода), создание «самовосстанавливающихся» тестов, автоматизация рутинных и типичных задач, автоматизация анализа и сбора статистики по результатам тестирования и пр. Почитать больше можно тут.

QA должен провалидировать и откорректировать результаты, полученные с помощью использования AI. Качественно это может сделать только специалист с уровнем знаний fullstack.

Заключение

По моему мнению, наращивание компетенций до fullstack, по сути, единственный вариант развития QA специалиста. При текущих тенденциях разгона технологий и трендах разработки, скорее всего, произойдет выравнивание заработной платы fullstack QA до уровня dev. Креативный подход и способность мыслить нестандартно помогают QA fullstack специалистам находить инновационные пути решения проблем, повышать качество и надежность продуктов. Профессиональное обучение программированию и опыт работы с различными технологиями позволяют им проводить комплексное тестирование и оптимизировать рабочий процесс. Будущее QA обещает быть интересным и перспективным, и прокачать свою квалификацию до fullstack QA — это отличный способ оставаться в тренде и быть ценнейшим сотрудником в компании.

Источник: https://habr.com/ru/companies/slsoft/articles/799589/


Интересные статьи

Интересные статьи

Привет, Хабр! Меня зовут Никита Летов, я техлид бэкенд-разработки сервисов дистанционного банковского обслуживания Росбанка для физических лиц, или как модно сейчас говорить, ретейла. В этом посте я р...
Сейчас, наверно, из каждого утюга звучат призывы про «войти в IT». Среди этих призывов часто звучит: «Стань тестировщиком, это самый простой способ сделать карьеру в IT». Я с этим не согласен, но это ...
Когда 18 месяцев назад начиналось исследование QA-курсов, получение ответа на вопрос, который вы видите в заголовке, не было конечной целью. Позднее, пообщавшись с 400+ QA-студентами и накопив достато...
В 2020 году половину Нобелевской премии по физике получил Роджер Пенроуз. Премия была выдана с формулировкой «За открытие того, что образование чёрных дыр с необходимостью следует из общей теории отно...
В статье расскажем, что такое цифровой путь корпоративного клиента, каким мы видим идеальный цифровой путь, и на примере уже привычной для автомобилистов услуги — оплаты по банковской карте — нач...