Тестирование ПО: суть профессии, требования и заработная плата

6433bc775f4da7f6265f0e9b38950fe3.png

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

Одна из них — тестирование ПО. Забегая наперед, скажем, что в тестировщиках нуждаются практически все компании, которые занимаются созданием программного обеспечения и сервисов. Что касается порога входа, требований, которые предъявляются к разработке ПО и размере заработной платы тестировщиков, то в этом вопросе поможет разобраться преподаватель курса GeekBrains «Тестирование ПО» Максим Засецкий.

QA, QC и тестирование

Тестирование программного обеспечения — обширное понятие, которое включает планирование, проектирование и, собственно, выполнение тестов.

Из чего состоит сфера тестирования ПОИз чего состоит сфера тестирования ПО

QA (Quality Assurance) — обеспечение качества продукта. QA-специалист контролирует и обеспечивает качество работы продукта компании. Он отвечает и за отдельные этапы разработки софта. В частности, за выбор инструментов для разработки, предотвращение возможных проблем. Еще он участвует в процессе совершенствования продукта. QA охватывает все этапы разработки, включая описание проекта, собственно, тестирование, релиз и, зачастую, пост-релизный этап.

QC (Quality Control) — контроль качества продукта. Задача QC-специалиста — проверка конкретного продукта, что включает анализ кода продукта, дизайна, плюс тестирование. QC-инженер разрабатывает стратегию тестирование вполне определенного тестирования, взаимодействует с разработчиками и организует само тестирование.

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

Кстати, есть внешнее ответвление — современное направление тестирования Developer in test. Специалисты этого направления — вроде как и разработчики, но занимаются они обеспечением качества разрабатываемого продукта.

Что должен знать и уметь хороший тестировщик?

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

Если говорить о джуниорах, то здесь можно выделить общие навыки:

  • Хорошие знания в клиент-серверной архитектуре.

  • Хороший тестировщик должен понимать механизм взаимодействия веб-приложений, уметь локализовать проблему вне зависимости от того, возникла ли она на фронтэнде или бэкенде.

  • Специалисту необходимо иметь базовые навыки использования специализированного софта, уметь использовать инструменты devTools, иметь представление о работе снифферов, знать базовые команды консоли Windows. 

Крайне важны soft-скиллы:

  • Умение общаться с коллегами.

  • Умение ясно излагать мысли.

  • Способность четко описать проблему разработчику.

  • Умение работать с документацией.

  • Понимание стандартов разработки ПО.

  • Внимательность.

  • Настойчивость.

  • Готовность доказать и отстоять свою позицию, основываясь на документации или здравом смысле.

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

Что касается тестировщиков с большим опытом и обширными знаниями, то им крайне необходимо постоянно расширять навыки, следить за тенденциями в мире IT, искать новые подходы к решению вчерашних задач и всегда быть «на волне».

В разных компаниях требования к тестировщиком отличаются. Кому-то нужны Developer in test, а для кого-то важнейшую роль играют софт-скиллы специалистов.

Мифы о тестировании ПО и тестировщиках

Почему-то все более распространенным становится заблуждение, согласно которому тестировщики занимаются тем, что просто нажимают на кнопки и вводят рандомную информацию в разные поля программы. На самом деле это не так, если бы тестировщики хаотично нажимали на кнопки и вводили случайные данные, то результаты тестирования никакой ценности для разработчика не принесли бы. Результаты представляли бы собой неструктурированную информацию из которой невозможно получить представление о том, насколько качественным получился продукт и насколько удобен он для пользователей. У тестировщиков всегда есть стратегия работы, план, который позволяет получить объективное описание актуального состояния продукта.

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

Третий миф — тестировщиков очень много. На самом деле хороших специалистов на рынке мало. Много тех, кто выкладывает резюме с пометкой «тестировщик», не понимая сути тестирования ПО. 

Востребованность профессии и доходы тестировщиков ПО

По данным зарплатного калькулятора Хабр Карьеры, средний размер заработной платы тестировщика составляет чуть больше 96 тысяч рублей в месяц. Конечно, это среднее значение. Есть те, кто зарабатывает значительно меньше, скажем, тысяч 30, а есть и те, кто получает в 10 раз больше — около 300 тысяч рублей.

Средняя з/п тестировщика ПО в первом полугодии 2020 годаСредняя з/п тестировщика ПО в первом полугодии 2020 года

Профессионалы примерно одного уровня, выполняющие один и тот же пул задач в столице и в регионе могут получать сильно отличающуюся зарплату. В Москве это 100+ тысяч рублей, в регионах — 40–50 тысяч рублей, а в некоторых случаях и вовсе 20–30 тысяч.

Если сравнивать уровень зарплаты тестировщиков в РФ и за рубежом, то разница в среднем 30–50%.

Источник картинки https://habr.com/ru/post/446650/Источник картинки https://habr.com/ru/post/446650/

Плюс можно сравнить еще разброс уровня заработной платы в зависимости от региона — Евросоюз, СНГ, США и Канада, РФ.

Источник картинки https://habr.com/ru/post/446650Источник картинки https://habr.com/ru/post/446650

Наш зарплатный калькулятор показывает и список навыков, которыми владеют тестировщики ПО:

  • Тестирование ПО;

  • Ручное тестирование;

  • Функциональное тестирование;

  • Автоматизация тестирования;

  • Python;

  • Selenium webdriver;

  • Разработка тест-кейсов;

  • Тестирование мобильных приложений;

  • Контроль качества;

  • Black box testing.

А вот свежие вакансии для специалистов по тестированию на Хабр Карьере. Их ищут, например, Сбербанк и Сбермаркет, Admitad, JetBrains, CSSSR и EPAM. Уровень зарплаты зависит от квалификации, стека и, конечно, компании.

Вакансии тестировщиков на Хабр КарьереВакансии тестировщиков на Хабр Карьере

Дефицит хороших специалистов характерен для сферы тестирования ПО так же, как и для многих других IT-отраслей. Профессионалы нужны всем и всегда. Сейчас, в условиях пандемии, востребованность тестировщиков может несколько снизиться, но это если и произойдет, то ненадолго.  

© Habrahabr.ru