- Кто такой тестировщик, QC Engineer, QA Engineer?
- Направления QA
- Стек технологий для Manual QA инженера
- Английский язык и Soft Skills (гибкие навыки)
- Стек технологий для Automation QA
- Как стать тестировщиком в 2023 году?
- Карьера QA специалиста
- Зарплаты QA
- Итоги
Всем привет!
Вы знаете, как создаются программы и информационные сервисы, которыми все мы пользуемся? Какие специалисты нужны, чтобы появился новый Фейсбук, Вайбер, Инстаграм, новый Windows или какая-то крутая видеоигра?
За разработкой программного обеспечения (ПО) стои́т целая команда профессионалов — и далеко не все из них умеют программировать.
Типичная команда будет включать в себя таких специалистов, как:
- бизнес-аналитик — проводит анализ бизнес-проблемы, формирует требования к разрабатываемому продукту;
- PM (Project Manager) — управляет всеми, кто вовлечен в работу над проектом;
- тимлид (Team Leader) — управляет командой разработчиков;
- UX/UI дизайнер — создает приятный дизайн приложения (UI) с хорошим пользовательским опытом (UX);
- разработчики/программисты — занимаются написанием кода, являются ядром команды;
- QA специалист — тестирует приложение на каждом этапе его разработки для обеспечения высокого качества продукта.
Если ПО не предназначено для использования только внутри компании, а нацелено на внешнюю аудиторию, то еще добавляется маркетинг-команда, которая работает с целевыми потребителями: исследует рынок, определяет клиентуру, привлекает ее внимание, подогревает интерес к продукту и многое другое.
Таким образом, в IT найдется хорошая работа даже для тех, кто не любит программировать. И сегодня речь пойдет о таком специалисте, как QA. Чуть выше вы уже узнали, что это, фактически, тестировщик, следящий за качеством ПО на каждом этапе его разработки. В чём специфика данной профессии, чем занимаются эти специалисты, насколько легко стать QA инженером и какие технологии должен знать потенциальный претендент на данную должность — это мы и раскроем в нашей статье. Устраивайтесь поудобней, мы начинаем!
Кто такой тестировщик, QC Engineer, QA Engineer
Очень часто термин “тестировщик” применяется ко всем специалистам, которые так или иначе связаны с проверкой ПО на качество. Тем не менее, в данной сфере существует формальное разделение профессий на три ветви: Tester, QC и QA. Давайте выясним, что означает каждая из них.
Тестировщик — специалист, который фокусируется на проведении непосредственных тестов над уже созданным ПО (составление тест-кейсов и баг-репортов, локализация дефектов и другое). Специалист проверяет, все ли работает согласно заявленным требованиям, производит сбор статистических данных и фиксирует их в соответствующих документах.
Тестировщик внимательно пользуется разработанным ПО, воспроизводит все возможные действия пользователя, работает с приложением на различных операционных системах, в различных браузерах (если это веб-приложение), на различных мобильных платформах (если это мобильное приложение); помимо ошибок он ищет еще и уязвимости.
Что-то вроде техосмотра транспортного средства. Отчеты об ошибках затем направляются разработчикам, которые ответственны за дальнейшее исправление багов.
QC (Quality Control) Engineer — специалист, который обеспечивает не только соответствие разрабатываемого ПО заявленным требованиям, но и его соответствие заранее определенным критериям качества продукта в целом. Также, он ответственен за определение готовности продукта к выпуску в продакшн. Цель Quality Control специалиста — формирование объективной картины состояния качества ПО на различных этапах разработки. Можно сказать, что специальность тестировщика является подмножеством специальности QC Engineer.
QA (Quality Assurance) Engineer — специалист, который обеспечивает контроль качества разрабатываемого ПО на всех этапах его планирования, проектирования и создания. Работа на этой должности является проактивной и носит превентивный характер, поскольку QA инженер уделяет внимание качеству продукта еще до того, как тот будет создан. Здесь на первый план выходят комплексы мероприятий, процессы и средства обеспечения качества ПО на каждом витке разработки. Непосредственно тестирование системы занимает уже второе место. Главное задание QA — выстроить систему так, чтобы она имела как можно меньше зон, где можно допустить ошибку, соответствовала всем показателям качества, а также была легко тестируема.
Специальность QC Engineer является подмножеством специальности QA Engineer.
Чтобы вас не путать, в данной статье мы приравняем понятия “тестировщик” и “QA инженер” в пользу второго. Будем расписывать стек технологий и путь становления именно QA специалиста. Таким образом мы сможем затронуть максимальное количество информации касательно направления тестирования.
Направления QA
Начнем с того, что в QA есть два основных направления — Manual и Automation. Специалисты каждого из них называются мануальный (ручной) тестировщик и тестировщик-автоматизатор, соответственно. Их разница в том, что первый следит за качеством продукта и проводит все тесты вручную, а второй автоматизирует тестирование путем написания скриптов. Automation QA использует определенный язык программирования и фреймворк для того, чтобы создавать программы, которые будут производить тестирование продукта вместо самого специалиста. Такой подход позволяет сократить время на тесты.
В обязанности мануального QA инженера входят:
- анализ и выяснение требований у заказчика либо бизнес-аналитиков;
- планирование процесса тестирования;
- написание сценариев тестирования;
- непосредственно тестирование программного продукта;
- определение проблемных мест, их документирование;
- использование систем отслеживания багов (баг-трекинги);
- обсуждение исправлений с разработчиками, активное взаимодействие с ними;
- отслеживание жизненного цикла ошибок;
- повторный тест исправленных дефектов;
- анализ тестирования;
- планирование идей по оптимизации качества программного обеспечения;
- ведение тестовой документации;
- проверка требований к программному обеспечению;
- оценка рисков;
- участие в стенд-апах и других митингах.
Тем временем на плечи Automation QA помимо прочего возлагаются такие обязанности, как:
- написание новых автотестов на основе разработанных вручную;
- обновление поломанных/устаревших автотестов;
- прогон автотестов;
- анализ результатов тестовых прогонов;
- настройка тестового окружения;
- ревью кода;
- оформление автотестовой документации.
На самом деле и мануальное, и автоматизированное направление имеют много общих требований, поскольку их фундамент одинаков. Давайте начнем с рассмотрения Manual QA, а затем плавно дополним его инструментами Automation QA.
Что должен знать тестировщик в 2023 году – стек технологий Manual QA Engineer
Общая теория по IT
Если лет 15 назад в тестировщики брали чуть ли не “с улицы”, то сейчас к претендентам с каждым годом выдвигают все больше и больше требований. Так что потенциальный претендент на должность прежде всего обязан хорошо понимать IT индустрию.
Итак, в этот пункт предусматривает такие темы, как:
- веб-технологии (HTTP, HTTPS, DOM, JSON, cookie, session), клиент-серверная архитектура;
- базы данных;
- компьютерные сети;
- операционные системы (обратить особое внимание на Unix);
- мелкие подтемы, как, например, системы счисления и т. д.
Теория тестирования и тестовая документация
Безусловно, любой QA инженер должен знать, с чем он вообще имеет дело. Если на заре разработки тестирование было чем-то интуитивным, то сегодня оно обрело четкие формы, обзавелось своими методиками, инструментарием и специализированным программным обеспечением.
Изучив теорию тестирования, вы сможете ориентироваться в данном направлении, понимать принципы, типы и методы тестирования, тест-дизайна, этапы жизненного цикла ПО; узнаете, как правильно составлять тестовую документацию (тест кейс, баг-репорт, чек-лист и т. д.) и многое другое.
Основные темы:
- Тестирование, основные стандарты ISTQB.
- SDLC и STLC. Методологии разработки ПО.
- Требования. Анализ и составление требований.
- Тестовая документация.
- Уровни, типы, методы и виды тестирования.
- Техники тестирования. Тест-дизайн
- Баги и баг-трекинговые системы.
- Системы контроля тестов.
Основы программирования + HTML/CSS
Основы программирования мануальному QA нужны не для того, чтобы заниматься непосредственным кодингом, а чтобы уметь читать код разработчика и понимать, что в нем происходит. Здесь важен не сам язык программирования, а банальное понимание того, как создаются программы, что такое переменные, функции, методы, классы, какие есть методологии программирования, как они реализуются и т. д. Для изучения основ отлично подойдет C# либо Java. Возможно, сюда стоило бы включить и Python, но он, пожалуй, слишком легкий для изучения и при работе с другими языками вам придется что-то доучивать. C# с Java же более фундаментальны и зная основы одного из них, вы легко сможете разбираться с кодом любых других популярных языков.
Фактически, владение основами программирования необходимо для чтения чужого кода и выявления возможных багов прямо на месте.
Отдельно выделяем языки верстки HTML и CSS. Если вы будете работать с веб-приложениями (а как показывает практика — проектов много — очередь и до тестирования “веба” рано или поздно дойдет), то вам будет полезно знать, из чего состоит FrontEnd часть веб-приложения. Также, вы будете работать с инструментами разработчика в браузере и там тоже надо будет взаимодействовать с HTML/CSS кодом.
Правила оформления документации. Модель CMMI
Если вспоминать три специальности, о которых мы говорили вначале (QA, QC и тестировщик), то этот пункт для тестировщика как такового является ненужным. Но вот для QA инженера он является неотъемлемым. В процессе проектирования ПО, слежения за его качеством необходимо производить соответствующее документирование. Чтобы делать это правильно, надо знать стандарты оформления подобных документов. Важно уделить внимание серии ISO 9000.
CMM / CMMI — это набор методологий (моделей) совершенствования процессов разработки ПО. Знание CMMI позволяет QA инженеру грамотно оценивать проект и планировать необходимые процессы по обеспечению качества.
SQL
SQL — язык запросов, который используется для взаимодействия с данными в реляционных базах данных. Тестировщику он пригодится для того, чтобы выполнять бэкенд-тестирование для проверки тестовых данных, вставки, удаления, обновления их значений в БД.
Сказать точный уровень владения SQL нелегко, поскольку все зависит от сложности проекта. На каком-то сгодится базовый уровень SQL, а где-то необходимо быть весьма и весьма подкованным. А если тестирование не связано с бэкендом, то знания языка запросов вовсе не пригодятся.
В общем и целом, тестировщик должен обладать следующими знаниями и умениями при работе с БД и SQL:
- умение распознавать различные типы БД;
- способность реализовать подключение к БД, используя разные клиенты SQL-соединений;
- понимание таблиц БД, ключей, индексов, типов отношений между таблицами;
- умение создавать простые запросы;
- понимание и умение разбирать по полочкам сложные запросы.
Веб-сервисы
Веб-служба (или веб-сервис) — это идентифицируемая веб-адресом программная система со стандартизированными интерфейсами. Данный термин описывает стандартизированный способ интеграции веб-приложений с использованием различных протоколов, например: XML, TCP/IP, SOAP, WSDL и UDDI. Веб-служба представляет собой способ связи между двумя электронными устройствами по сети, такими веб-сервисами можно пользоваться независимо от компьютера, браузера или места доступа в Интернет (поиск, веб-почта, хранение документов, файлов, закладок и т. д.).
К преимуществам веб-сервисов можно отнести:
- возможность создания необходимых кондиций для взаимосвязи программных компонентов, которые не будут зависеть от используемых платформ;
- веб-сервисы используют открытые стандартные протоколы; благодаря XML обеспечивается легкость в формировании и настройки веб-сервисов;
- использование HTTP гарантирует успешную взаимосвязь систем через межсетевой доступ.
Веб-сервисы должны знать разработчики для корректной реализации ПО, а тестировщикам они нужны, чтобы понимать, как работает та или иная веб-система.
Jira
Система баг-трекинга, которая помогает выявлять, регистрировать и контролировать баги, найденные в разрабатываемом ПО, а также отслеживать процесс устранения этих ошибок. Является командным инструментом, что упрощает процесс взаимодействия разработчиков и тестировщиков, а также различную баг-трекинговую деятельность в принципе. Помимо прямого назначения помогает команде эффективнее работать, расставлять приоритеты и выбирать дальнейшие шаги оптимизации ПО.
Postman
Популярный и в то же время мощный набор инструментов для тестирования API (в среде разработчиков произносится как “а́пи”). API — это прикладной программный интерфейс; он указывает, каким образом следует обращаться к программе и какие ответы она обязана предоставлять пользователям.
Postman относительно простой в использовании, имеет богатый интуитивный интерфейс. Он проверяет запросы с клиентской стороны на серверную, а также отклик со стороны бэкенда. Таким образом можно убедится, что на стороне сервера все работает, даже если фронтенд сторона еще не готова.
API можно тестировать и при помощи множества других программных средств (например, JMeter), однако, на сегодняшний день именно Postman является наиболее компромиссным инструментом тестирования запросов, сочетающим в себе простоту и высокую эффективность.
Git
Git — это популярная система контроля версий, позволяющая вести историю разработки проекта с возможностью доступа к каждой сохраненной версии. Одним из самых известных антагонистов Git является SVN — централизованная система, в отличие от децентрализованной Git.
Также, в работе вам пригодится и сервис онлайн-хостинга проектов, использующий систему контроля версий. В данном случае это GitHub. В паре с Git он позволяет разработчикам сохранять свой код онлайн, а затем взаимодействовать с другими разработчиками в разных проектах.
Git нужен скорее для Automation QA, поскольку позволяет в удобном виде хранить код тестов с возможностью вернуться к рабочей версии тестов. Также, тестировщик сможет:
- иметь доступ к коду разработчиков;
- организовать список тестов и отслеживать его выполнение;
- тестировать код с разных устройств (при этом сам код лежит на удаленном репозитории Git);
- хранить различные настройки для приложения;
- выполнять другие взаимодействия.
Методологии разработки Agile/Scrum
Методологии разработки — это своеобразные путеводители по процессам эффективной разработки ПО. Их применение помогает организовать максимально продуктивную работу всех участников, которые напрямую или косвенно задействованы в разработке продукта в соответствии с выбранной стратегией.
Agile — семейство гибких методологий разработки программного обеспечения, которое позволяет выпускать продукт небольшими частями, постоянно его дополняя и совершенствуя. При таком подходе технические и бизнес-подразделения работают совместно, ПО постоянно обновляется, обеспечивается быстрое принятие решений и выявление неправильных подходов, приложение проще обслуживать, а качество кода готового продукта более высокое. Agile имеет собственный манифест, который подробно описывает основные принципы, на которых строится гибкая разработка.
Scrum является одной из популярнейших реализаций agile-подхода. Его используют многие команды, поэтому знание особенностей работы со scrum-моделью для QA инженера является не менее важным, чем для любого разработчика.
Английский язык
Знание английского языка — естественное требование для многих профессий в IT, поскольку большинство новых сведений о технологиях, курсы, учебные и справочные материалы появляются в первую очередь на английском. Для работы в команде обычно знаний языка на уровне чтения технической документации, комментирования кода и составления баг-репортов вполне достаточно, однако, если возникнет необходимость вести переговоры и/или переписку с иностранным заказчиком, либо же вы будете в интернациональном коллективе, ваш уровень должен быть выше (тут уже очень желательно иметь уровень не ниже Upper Intermediate).
Видео курсы по схожей тематике:
Soft Skills
Так называемые “гибкие (мягкие) навыки” – это внутренние качества специалиста, которые помогают ему выполнять работу максимально качественно и без лишнего напряжения. К примеру, для следователя-криминалиста прекрасными софт скиллами будут объективность, внимательность, умение чувствовать своего собеседника, прекрасное дедуктивное мышление и неугасающее стремление докапываться до правды. Для работника на ресепшене критически важными мягкими навыками есть коммуникабельность, дисциплинированность, пунктуальность, обходительность, вежливость и другие.
Какие soft skills пригодятся тестировщику? Специалисту, который следит за качеством ПО и проверяет его на прочность, следует обладать следующими навыками:
- внимательность, умение концентрироваться на задаче;
- инициативность;
- усидчивость;
- организованность, проактивность, нацеленность на результат;
- стрессоустойчивость;
- эмпатия к пользователю и вместе с тем понимание бизнес-процессов (умение “переобуваться”);
- адаптивность;
- коммуникабельность;
- умение работать в команде;
- обладание логическим, системным, упорядоченным мышлением;
- умение правильно осуществлять декомпозицию (по отношению к системам, задачам, проблемам и т. д.);
- наличие шестого чувства + немного изобретательности;
- стремление учиться и умение передавать свои знания другим;
Пользовательский опыт (не обязательно, но очень удобно)
Было бы неплохо, если б перед тестированием приложения вы уже сталкивались с чем-то подобным в обычной жизни. Если работать предстоит в сфере игростроения, то ваш огромный геймерский опыт будет как нельзя кстати. Работа с проектами из веб-индустрии? Опыт сёрфинга в интернете (соцсети, интернет-магазины, онлайн-сервисы) облегчит понимание логики пользователей, их ожиданий и точек интереса.
Automation QA
Автоматизированный QA технически является надмножеством позиции Manual QA — он должен знать все то же самое, что и мануальный коллега плюс несколько новых инструментов. Эти инструменты мы сейчас и перечислим.
Язык программирования
Если в разделе о Manual QA мы говорили об основах программирования, то автоматизатору понадобится именно уверенное владение конкретным языком. Обычно выбирают среди Java и Python, но это не предел. В тестировании можно применять и такие языки, как JavaScript, C#, Ruby, PHP, SmashTest и другие.
При помощи выбранного языка вы будете писать автотесты, которые будут выполнять тестирование за человека. Программа работает — тестировщик анализирует результаты. Это упрощает работу, повышает скорость проведения тестов и снимает часть задач с человека.
Фреймворк для тестирования
Для создания автотестов зачастую используется специальные программное обеспечение — фреймворки. Одним из популярнейших считается Selenium. Он мультиплатформен, ориентирован на работу с веб-приложениями и поддерживает множество популярных языков программирования. Более того, Selenium является основной технологией для множества других инструментов автоматизации браузеров, API и фреймворков.
Инструменты нагрузочного тестирования
Данный пункт является необязательным, но при этом очень желателен. Нагрузочное тестирование — это вид тестирования, при котором производится тест производительности целевого ПО при различных нагрузках от действий определенного количества пользователей. Наиболее известными инструментами проведения нагрузочного тестирования являются Gatling и JMeter.
Как стать тестировщиком в 2023 году?
Превращаем список приведенных выше технологий в туториал. Начинаем с пути Manual QA.
Вы можете учиться самостоятельно — по книгам или видео курсам, а можете записаться на курсы тестирования для максимально эффективного обучения. В любом случае вначале вам нужно очень хорошо изучить теорию тестирования и базовые темы в IT: веб-технологии, API, клиент-серверная архитектура, базы данных, компьютерные сети, операционные системы (обратить особое внимание на Unix), мелкие подтемы, как, например, системы счисления и т. д. Конкретные темы по тестированию мы расписали в одном из первых наших разделов. Затем вам следует освоить написание тестовой документации (для чистого тестировщика), а QA понадобится еще и знание стандартов по обеспечению качественного ПО (ISO 9000) для дополнительного документирования, модель CMMI.
Чтобы беспроблемно читать код разработчиков и понимать, что в нем происходит, следует владеть основами программирования. Для этого лучше выбрать либо Java, либо C# — документация по данным языкам очень информативна, есть большое комьюнити. Более того, множество программ обучения по данным языкам располагает прекрасным бэкграундом (история программирования, как работают вычислительные системы и как они обрабатывают информацию), который закладывает прочный фундамент программирования. Также, стоит освоить языки верстки HTML и CSS — они очень простые и используются в абсолютно всех веб-приложениях
Для работы с обеспечением, которое использует базы данных, необходимо изучить основы SQL.
Далее приступаем к изучению веб-сервисов, а после — к популярной баг-трекинговой системе Jira и мощному набору инструментов для тестирования API — Postman.
Создание программного продукта обычно ведется в команде, потому знание методологии командной разработки является не менее важным, чем предыдущие технологии. Уделите время изучению принципов Agile/Scrum — с их помощью эффективно разрабатывается современное программное обеспечение. Методология гибкой разработки очень важна для тестировщика, поскольку он участвует в производственном цикле так же, как и разработчики.
Также, не забудьте подтянуть ваш английский как минимум до уровня Intermediate. Он нужен для комфортного поиска нужной информации в интернете, чтения технической документации, работы с иностранными коллегами, а также — для возможного взаимодействия с заказчиком. Все же английский в IT еще никому не мешал и более того — давал новые карьерные возможности.
Чтобы ваша работа приносила вам удовольствие и вы себя не заставляли работать, вам следует обладать следующими софт скиллами:
- внимательность, умение концентрироваться на задаче;
- инициативность;
- усидчивость;
- организованность, проактивность, нацеленность на результат;
- стрессоустойчивость;
- эмпатия к пользователю и вместе с тем понимание бизнес-процессов (умение “переобуваться”);
- коммуникабельность;
- другие качества, которые мы указали в соответствующем разделе.
С этими навыками и знаниями вы сможете приступать к практике. Изучите Git, начните работать над каким-либо проектом: покройте его тестами, напишите тест-документацию. Опубликуйте наработки на GitHub — это даст вам ценный опыт работы с распределенной системой управления версиями и позволит проверить свои навыки в решении реальной задачи. Несколько хороших проектов, и полноценное портфолио готово, а с ним вы можете уверенно подавать резюме на вакансию мануального QA инженера.
Если вас интересует автоматизированное тестирование, дополнительно изучите Python, либо Java + фреймворк для тестирования (Selenium, PyTest, Robot Framework или другой). Это позволит вам создавать скрипты, которые будут автоматически выполнять тестирование, избавляя вас от лишней рутины.
Очень желательно иметь опыт работы с инструментами нагрузочного тестирования. Это может быть JMeter, Gatling или любой другой популярный аналог. Такой опыт даст вам дополнительный вес в глазах работодателя, что сыграет вам на руку, поскольку конкуренция за место тестировщика весьма высока.
Очень желательно, чтобы у вас был наставник, который мог бы следить за вашим прогрессом, отвечать на возникающие вопросы, давать полезные советы и направлять в нужное русло.
Карьера QA специалиста
Какие перспективы карьерного развития у тестировщика после получения первой работы?
Путь QA очень похож на самурайский путь разработчика: Intern/Trainee, Junior, Middle, Senior, Team/Tech Lead. Наиболее корректный путь карьерного роста предусматривает следующее:
- Работа над hard skills. Углубление знаний и навыков в пределах технологического стека, который вы используете, а также расширение этого стека. Весьма перспективным считается именно автоматизированное тестирование, поэтому на короткой дистанции наибольший успех ожидает тех тестеров, которые будут двигаться в сторону программирования.
- Прокачка soft skills. Очень важно не прекращать работу и над внутренним стержнем. Сюда входит множество моментов: умение отстаивать свои позиции, чётко аргументировать своё мнение, быть приятным коммуникатором, внимательно и ответственно относиться к своей работе, занимать проактивную, инициативную позицию в команде, работать над повышением своей продуктивности и т. д.
- Внерабочие активности. Сюда можно отнести чтение технической литературы и актуальной информации по вашей специализации, посещение тренингов, прохождение курсов, применение новых знаний на практике, например в создании pet-проектов или непосредственно на работе.
Также важно работать в различных компаниях, меняя их примерно раз на 1.5-3.5 года. Это позволяет, с одной стороны, не “закостенеть” на текущей работе, а с другой стороны, оставаться в тонусе, получать ценный опыт работы с различными командами и проектами, обогащать профессиональный кругозор, осваивать новые и развивать уже имеющиеся hard и soft навыки.
Помимо этого, смена места работы раз в 2-3 года даёт ощутимый прирост в зарплате, поскольку денежная оценка ваших знаний и навыков в различных конторах может существенно различаться.
Говоря о карьерных перспективах, вы также можете пойти путем существенного развития hard skills и, освоив программирование и сопутствующие технологии, пополнить ряды разработчиков. Если же ваша сильная сторона – это soft skills и вы планируете сделать упор именно на них, можете развиваться в направлении бизнес-анализа либо менеджмента.
Бесплатные вебинары по схожей тематике:
Зарплаты QA
Воспользуемся зимней зарплатной аналитикой за 2023 год от DOU – сообщества профессиональных украинских разработчиков, и узнаем, сколько зарабатывают наши тестировщики.
Медианные зарплаты состоянием на декабрь 2022:
- Junior QA Engineer – 800 USD
- Middle QA Engineer – 1850 USD
- Senior QA Engineer – 3400 USD
- QA Team Lead – 3500 USD
- QA Tech Lead – 4400 USD
Самые высокие медианные заработные платы у Automation QA, самые низкие – у Manual QA, причём разница на уровнях Middle и Senior может достигать 1000 USD в пользу автоматизированных тестеров.
Наиболее оплачиваемыми языками программирования у QA специалистов являются:
- C# и TypeScript – по 3000 USD.
- Java – 2950 USD.
- Kotlin – 2850 USD.
- Python – 2700 USD.
- JavaScript – 2500 USD.
- Інші мови – 2200 USD.
Выше приведены именно медианные зарплаты.
Английский также влияет на денежный оклад как новичков, так и опытных QA специалистов. Логика остается прежней – чем лучше знаешь английский, тем больше получаешь.
Итоги
В данной статье мы постарались сделать максимальный охват темы тестирования. Была рассмотрена не только специальность тестировщик, но и два её надмножества — QC и QA. Сейчас линии разграничения между этими тремя профессиями по большому счёту стёрты и прослеживаются лишь в серьезных компаниях. В более мелких же тестировщик может запросто выполнять функции QA. Тем не менее, в нашей статье высветлены те технологии и области знаний, которые подойдут как тестировщику, так и QA инженеру. Также, мы рассмотрели ответвления Manual QA и Automation QA. Как выяснилось, без знания мануального тестирования вам не стать автоматизированным тестером. Ведь как можно писать автотесты, если ты в принципе не понимаешь, что, где и как исследовать на предмет багов?
Несмотря на высокую конкуренцию за место тестировщика, количество вакансий остается одним из самых больших на рынке труда в IT. Посмотрите популярные ресурсы по трудоустройству в IT и вы сами в этом убедитесь. Поэтому нами и были указаны некоторые необязательные технологии — мы хотим вооружить наших читателей максимально красноречивым стеком, дабы вы были на голову выше конкурентов.
Приведенный в статье стек технологий является прочной основой QA специалиста — как мануального, так и автоматизированного. Если этот материал не дал вам в полной мере ответ на вопрос “как стать тестировщиком и что следует для этого учить?”, делимся с вами ссылкой на вебинар одного из авторов ITVDN — действующего QA Engineer Андрея Шевцова.
Если вас интересует данное направление и вы хотите стать QA инженером, предлагаем вашему вниманию подборку курсов и вебинаров ITVDN, которые вы найдете на странице специальности Quality Assurance.
Желаем успехов в изучении IT!
Оставайтесь с ITVDN!
Статьи по схожей тематике