Сообщество специалистов по тестированию InQA.by совместно с образовательной студией MyMonday.by провели исследование рынка труда QA-инженеров и автоматизаторов. Задача исследования – определить наиболее распространенные требования работодателей к специалистам по ручному и автоматизированному тестированию ПО на различных профессиональных уровнях от junior до lead, ожидающие специалистов задачи и озвучиваемые работодателями зарплатные ожидания.
В ходе исследования были проанализированы 248 вакансий для «ручных» тестировщиков и автоматизаторов на HeadHunter, Dev.by, LinkedIN; из них 79 вакансий для специалистов по автоматизации, 169 – для «мануальщиков».
QA Engineer
Junior
Опыт работы: до года
В целом работодатели готовы брать джуниоров без опыта работы при условии наличия законченных курсов по тестированию и общего понимания процесса разработки и знания стадий тестирования ПО. Нелишним будет и опыт составления такой тестовой документации, как, например, тест-кейсы, чек-листы и отчеты.
Уровень английского: Intermediate и выше (более 90% вакансий, менее 10% вакансий не содержат требований к языку)
Зарплата: нет данных (работодатели предпочитают не указывать диапазон в вакансиях).
Наиболее частые задачи Junior QA Engineer (более 60% вакансий):
● Непосредственно тестирование. В зависимости от специфики деятельности компании оно может включать тестирование интерфейсных элементов приложения, его производительности и пр.
● Работа с мониторинговыми системами
● Занесение найденных ошибок в баг-трекинговую систему (как правило, JIRA)
● Составление документации: тест-планов, тест-кейсов и чек-листов
● Взаимодействие с самыми различными специалистами, начиная с разработчиков и заканчивая менеджерами клиентской поддержки
● Анализ требований клиента
К редким требованиям (<30% вакансий) можно отнести:
● Участие в ежедневных митингах
● Разработку и создание не только мануальных, но и автоматизированных тест-кейсов с использованием соответствующего инструментария (правда, в составе команды). Довольно серьезное требование для новичка без опыта работы.
Что касается технологий, работодатель будет ожидать от junior QA следующего (более 60% вакансий):
● Знания JIRA
● Понимание методологий Agile (Scrum, Kanban)
● Понимание принципов работы сетей
● Знания сетевых протоколов, cookies и кэша
● Знание Android SDK, xCode
● Общего представления об HTML, CSS, JavaScript
Более редкие (<30% вакансий) требования к знаниям:
● Опыт работы с системами управления тестированием (например, HP QC и Zephyr)
● Умение писать простые SQL запросы и использовать PHPMyAdmin
● Опыт программирования на JAVA или Python
Middle
Опыт работы: 1-2 года (более 90% вакансий)
Стоит отметить, что некоторые компании готовы брать специалиста с опытом от 2-х лет на позицию Senior. Ключевым отличием от junior'а является то, что мидлу, как правило, требуется опыт в какой-то определенной области (например, бэкенд или API).
Уровень английского: Intermediate и выше (более 80% вакансий, менее 20% вакансий не содержат требований к языку)
Зарплата: 800-2000 у.е. (данные по 14 вакансиям)
Частые задачи (более 60% вакансий):
● Тестирование ПО: требуется применение различных видов тестирования (функционального, UI-тестирования, регрессионного тестирования, тестирования визуальных и звуковых эффектов, тестирования API и Web Services) на различных платформах (iOS, Android).
● Анализ и оценка поступающих требований
● Составление тестовой документации: тест-планов, тест-кейсов, чек-листов
● Сопровождение проекта на всех этапах его существования
● Анализ работы системы (работа со статистикой и базами данных)
● Составление стратегий тестирования новых проектов и оптимизация старых
Среди редких задач (<30% вакансий) встречаются:
● Участие в ежедневных митингах и ежемесячных показах
● Работа с виртуальными машинами (Oracle VM VirtualBox)
● Оценка затрат на проект
От специалиста уровня Middle работодатель ожидает владения следующими технологиями (для более чем 60% вакансий):
● Системами отслеживания ошибок (например, JIRA)
● Системами управления тестированием (например, HP QC, Zephyr)
● Системами управления версиями (например, Git, SVN)
● Продвинутого пользования Windows OS
● Знания SQL
● Опыт работы с MS SQL, mySQL, SQLite
Редкие (<30% вакансий) требования:
● Базовые знания Java
● Опыт работы с анализаторами трафика (Fiddler, Charles)
● Опыт работы с Linux
● Знание CI Jenkins или TeamCity
● Владение инструментами автоматизации действия браузера Selenium, WebDriver
● Знание NUnit, SpecFlow
● Знание NET Framework, ASP.NET, C#
Middle, по сути, - промежуточный уровень: продвинутый Junior и подготовка к позиции Senior. Отличается более глубоким пониманием самого процесса тестирования, а также знанием технологий. На этом уровне добавляется владение базами данных и системами управления тестированием.
Senior
Опыт работы: 2-4+
Можно найти вакансии с опытом работы от двух лет, но наиболее частый порог опыта для «сеньора» – 3-4 года (более 70% вакансий). Более половины компаний ищут senior-специалистов с опытом в конкретной сфере, например, работавших в тестировании мобильных приложений/игр/высоконагруженного бэкенда и т.д.
Уровень английского: Intermediate (более 50% вакансий), Advanced (около 20% вакансий)
Зарплата: от 1200 у.е. (по данным 11 вакансий)
Как легко заметить, вполне можно быть «мидлом» в одной компании, и зарабатывать больше, чем «сеньор» в другой.
В обязанности Senior-специалиста часто входят (более 60% вакансий):
● Тестирование ПО: требуется применение различных видов тестирования (функционального, smoke, регрессионного, юзабилити-, UI-тестирования, тестирования локализации, тестирования методом свободного поиска, тестирования API и Web Services и т.д.) на различных платформах
● Анализ и оценка поступающих требований
● Верификация и валидация дефектов
● Составление тестовой документации: тест планов, тест-кейсов, чек-листов
● Разработка стратегии тестирования, составление и выполнение тест-планов
● Сопровождение проекта на всех этапах его существования
● Работа с базами данных
● Оформление улучшений в JIRA
● Контроль за выполнением тестирования
● Оценка качества продукта и готовность продукта к релизу
● Участие в митингах и показах
● Формирование команды тестировщиков и управление ей
● Обучение и консультирование начинающих специалистов
К редким задачам (<30% вакансий) можно отнести:
● Автоматизацию процесса тестирования
● Отслеживание новых тенденций в сфере тестирования
● Cоздание и поддержка тестовых сред для различных Windows, NAS и SharePoint платформ и устройств
На уровне Senior у QA Engineer появляются управленческие и наставнические обязанности. Senior – это уже не только специалист по тестированию ПО, это еще и «небольшой» менеджер, занимающийся руководством менее опытными коллегами.
Требования к знанию технологий (более 60% вакансий):
● JIRA
● Powershell
● Владение методологиями Agile и Scrum
● Знание особенностей разных версий iOS/WatchOS/Android
● Навыки работы с Firebase Console
● Опыт работы с прокси-инструментами (Charles proxy, Fiddler и др.)
Редкие требования (менее 30% вакансий):
● знание инструментов Xcode, Android Studio
● опыт автоматизации iOS/Android приложений (Appium/XCTest и др.)
● опыт работы с консолью Unix
● опыт работы с PostgreSQL
● опыт профилирования RDBMS
● опыт работы с инструментами CI (TeamCity, Jenkins и пр.)
● базовые навыки автоматизации тестирования с помощью POSTMAN/ Swagger/ Insomnia
● работы с симуляторами EMC, NetApp, Nasuni, Panzura и других NAS-устройств
● Навыки работы с Facebook Analytics / Flurry / AppsFlyer и другими аналитическими сервисами
На уровне Senior можно заметить возрастающую потребность в умении автоматизировать процесс тестирования ПО даже для «мануальщиков», однако в подавляющем большинстве компаний это не обязательное требование.
Lead
Опыт работы: от 3 лет (<30% вакансий), 4+ лет (>60% вакансий)
Уровень английского: Intermediate (более 60% вакансий), Advanced (менее 30% вакансий)
Зарплата: нет данных
Задачи (более 60% вакансий):
● Отвечать за выполнение программы тестирования
● Взаимодействовать с заказчиком и владельцем продукта
● Решать все вопросы управления персоналом команды тестирования: участвовать в отборе и найме кандидатов, управлении знаниями и обучением
● Внедрять инструменты тестирования
● Планировать тестирование
● Проектировать, разрабатывать и выполнять тесты
● Производить функциональное и нефункциональное тестирование
● Управлять средой тестирования и конфигурацией продукта, предназначенного для тестирования
● Использовать метрики для непрерывного совершенствования процесса тестирования
● Производить стратегический менеджмент всех ресурсов тестирования в Agile-командах
● Отслеживать новые тенденции с целью постоянного совершенствования процесса тестирования
● Осуществлять контроль качества в течение всего жизненного цикла продукта
● Обеcпечивать доступность тестовой среды
● Анализировать и исправлять причины торможения процесса тестирования
● Обеспечивать прозрачность процесса тестирования
К специфическим задачам (менее 30% резюме) можно отнести:
● Обеспечение автоматизации тест-кейсов, модульного тестирования, тестирования производительности
● Разработку автоматических тест-сценариев и скриптов
● Приобретение нужного ПО и hardware для компании
Знание технологий (более 60% вакансий):
● Опыт работы с bug-tracking и test-tracking системами (Jira, Test Link,TestRail)
● Использование инструментов для функционального тестирования
● Опыт работы с логами
● Понимание форматов JSON и XML
● Опыт работы с SQL-/NOSQL-базами данных
Менее частые требования (менее 30% вакансий):
● Знание инструментов автоматизации тестирования для различных слоев ПО (например, UI, сервисов, API и т.д.) и технологий CI и CD (например, Git, Jenkins)
● Знание Python и Java
● Опыт работы с электронными платежными системами
Работодатели также обращают внимание на количество специалистов в команде, где уже работал лид. Оптимальный опыт руководства: от трех лет в команде от 5 до 10 человек (такое требование встречается более чем в половине вакансий для Lead QA).
Приглашаем на практический курс по Тестированию ПО в Минске!
Лозунг курса - "С нуля до трудоустройства!". Во время обучения участники решают настоящие рабочие задачи QA-инженеров и изучают актуальные инструменты, которыми пользуются в современных IT-компаниях.
Ответственные выпускники курса чувствуют себя достаточно уверенно, чтобы успешно проходить собеседования.
Хотите стать QA-инженером? Мы поможем этому желанию осуществиться!)