Тестирование #гайд

Путь тестировщика: от претендента к сотруднику IT-компании

14 мая 2019 Читать ~ 10 минут

Всего из-за одной ошибки в новом софте американская компания Knight Capital потеряла 465 миллионов долларов. Крупный финансовый брокер оказался на грани банкротства после того, как программа для трейдинга начала бесконтрольно скупать акции, нарушая правила биржи. Расследование показало, что проблем удалось бы избежать, если бы при разработке новой системы не пропустили один этап тестирования.

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

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

Содержание:

1. Чем занимаются тестировщики

2. Где можно научиться тестированию

3. Как получить первую работу в QA

4. Куда двигаться дальше

5. Сделайте осознанный выбор

Чем занимаются тестировщики

Тестировщик не персонаж второго плана – у него своя важная роль в проекте. Он не просто ищет ошибки в программе, а проверяет качество продукта и оценивает, можно ли выпускать его в реальный мир к миллионам пользователей. Второе название этой профессии – QA-специалист, так как тестирование является частью комплексного процесса quality assurance (обеспечение качества), которое охватывает весь цикл разработки. «Качество» в данном случае не абстрактная характеристика, а способность программного продукта удовлетворять установленным требованиям.

Тестирование бывает нескольких видов: в зависимости от того, что конкретно проверяют в программе, на каком устройстве и с какой целью. Основное направление, которое обычно осваивают все новички, – функциональное тестирование. Его цель – убедиться, что программа выполняет задачи, которые в нее заложили. Тестировщик становится первым пользователем продукта и оценивает его функции. Все свои действия (какая функция проверяется и при каких условиях) специалист документирует в тест-кейсах.

В зависимости от способа выполнения тест-кейсов, тестирование бывает ручным и автоматизированным. В первом случае тестировщик исследует все самостоятельно, вручную, а во втором – тесты запускает программа. Для автоматизации требуются знания программирования: нужно писать скрипты для тест-кейсов и разбираться в специальных фреймворках (Selenium, Appium и др.). Начинающим специалистам не обязательно сразу уметь автоматизировать тесты, однако это очень перспективное направление, которое можно освоить в дальнейшем.

Обязанности тестировщика могут отличаться в зависимости от сложности проекта и методологии, по которой работает команда.

Основные задачи начинающего тестировщика:

  • Детальное изучение продукта.
  • Анализ технических требований к продукту.
  • Планирование процесса тестирования.
  • Подготовка тестовой документации (чек-листы (список функций, которые нужно протестировать), тест-кейсы (описание действий тестировщика для проверки какой-либо функции).
  • Поиск, выявление и отслеживание ошибок.
  • Коммуникация с разработчиками, менеджером проекта.

Где можно научиться тестированию  

Для работы в IT не обязательно профильное высшее образование. Даже такие мировые гиганты как Apple и Google больше не требуют диплом у претендентов на вакансии. А генеральный директор компании IBM Вирджиния Рометти считает, что профессиональные курсы часто оказываются полезнее нескольких лет в университете.

Чтобы начать карьеру тестировщика, достаточно закончить образовательные курсы в одном из учебных центров или прямо в IT-компании. Некоторые компании проводят даже бесплатное обучение, но это не самый удобный вариант: придется проходить строгий предварительный отбор и, возможно, долго ждать старта занятий.

В специализированных учебных центрах курсы идут регулярно, и можно выбрать подходящий график. Обучение на тестировщика в среднем длится 1-6 месяцев, а стоимость варьируется от 500 до 1900 рублей. Все программы обучения, независимо от длительности, концентрируются на базовых навыках тестировщика, затем уже изучаются дополнительные темы, например, автоматизация.

Каждый месяц новый набор на курс по тестированию стартует в образовательном центре ПВТ (IT Academy). Помимо Минска, филиалы центра работают в Гродно и Гомеле. В IT Academy базовый курс по функциональному тестированию рассчитан на 2 месяца. Также есть еще два направления – тестирование мобильных приложений на Android и iOS и автоматизированное тестирование. Есть утренние, вечерние и группы выходного дня, что позволяет при желании совмещать работу и освоение новой сферы. Чтобы попасть на курсы, кандидатам нужно пройти онлайн-тест по английскому языку (знать английский достаточно на уровне Intermediate). В конце обучения студенты защищают реальный проект по тестированию программного обеспечения. Выпускникам, которые получают итоговую отметку выше 7 баллов, предлагают бесплатную программу трудоустройства. Это не значит, что вам найдут место работы, но помогут составить резюме и подготовиться к собеседованию. Также IT Academy может порекомендовать своих учеников на вакансии в компании-партнеры, которых более 500.

Некоторые программы обучения сразу включают в себя основы автоматизации и тестирование мобильных и веб-приложений. Например, такие курсы проводит «Компьютерная Академия Шаг». Занятия проходят два раза в неделю по вечерам в течение полугода. Эта школа доступна не только минчанам – филиалы расположены во всех областных центрах и Бобруйске. Здесь также обещают помочь устроиться на работу, но не стоит рассчитывать на что-то большее, чем консультация.

Если не получается подстроиться под график групповых курсов, то можно найти вариант индивидуального обучения с преподавателем. В Минске такая опция есть в QA Академии, где готовят исключительно тестировщиков. Конечно, стоимость таких занятий выше, чем обычных курсов (4-8 недель обучения обойдутся в 1900 рублей).

Если вы не из Минска, и в вашем городе нет подходящих образовательных центров, можно учиться дистанционно. Например, в онлайн-университете GeekBrains обучение тестированию длится год, включает теорию и практику, сопровождение куратора и помощь в трудоустройстве. А с хорошей мотивацией можно заниматься и самостоятельно, тем более, что в сети есть бесплатные дистанционные курсы: англоязычные программы представлены на платформах Coursera, edX, Udacity и Alison. Много полезной и актуальной информации можно найти в профессиональных блогах и форумах, например,  Software Testing Tools, Software Testing Help, Software Testing Tricks.

Как получить первую работу в QA

Где искать вакансии

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

Не игнорируйте LinkedIn –  рекрутеры активно используют эту площадку. Обновите свой профайл, ориентируясь на профессию тестировщика. Используете LinkedIn, чтобы завести профессиональные знакомства. Вы можете напрямую написать HR-специалисту и узнать о вакансиях и условиях работы.

Как составить резюме

Прежде чем написать резюме, изучите, какие требования для junior-тестировщиков описаны в размещенных вакансиях. Это поможет сопоставить свои возможности с ожиданиями работодателей. Обычно список требований в вакансиях начинается с базовых знаний: теория тестирования, составление тестовой документации, понимание методологий разработки. Затем могут идти более специфические: знакомство с базами данных (формирование запросов), основы автоматизации. Если в вакансии встречается незнакомая технология, не стоит сразу отбрасывать этот вариант. Лучше выяснить, что это и для чего используется. От начинающего специалиста как раз и ждут способности быстро обучаться и осваивать новое. 

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

Как получить опыт, не выходя из дома

Поиск первой работы может занять несколько месяцев. И это время можно провести с пользой для будущей карьеры. Продолжайте осваивать тестирование не только в теории, но и на практике при помощи краудтестинга. Это онлайн-платформы, где тестировщикам предлагают удаленно работать над проектами. Наиболее популярны utest.com, test.io,  есть русскоязычная crowdtesting.ru. Работа тестировщиков на платформах оплачивается, сумма вознаграждения зависит от количества и критичности найденных багов. И самое главное – это хороший практический опыт, возможность прокачать навыки, полученные на курсах. Все это пригодится при устройстве в компанию. Проекты, над которыми вы трудились на краудтестинге, можно включить в резюме.

Как готовиться к собеседованию

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

Иногда на собеседовании могут предложить тестовое задание. Не удивляетесь, если вас попросят протестировать карандаш, чашку, лифт или даже ракету Илона Маска. Так наниматель не столько проверяет креативность кандидата, сколько его подход к работе. Не нужно придумывать, что будет с кофеваркой в открытом космосе. Действуйте как тестировщик – исследуйте объект, исходя из требований к нему. Определите, что можно проверить в рамках функционального тестирования и какие еще виды тестирования необходимы. Чтобы не растеряться, прочитайте пару примеров, как справиться с подобными необычными задачами.

Вы успешно прошли собеседование и получили работу. На какую зарплату можно рассчитывать? По данным за май 2019 года, тестировщики в нашей стране в среднем получают около 1000 долларов, а опытные специалисты (Senior QA Engineer/Tester) зарабатывают около 1900 долларов. 

Куда двигаться дальше

Карьера в тестировании может развиваться очень динамично, даже если вы закончили только специализированные курсы. Это подтверждает пример знаменитого QA-гуру Джеймса Баха. В конце 1980-х он стал самым молодым менеджером по тестированию в корпорации Apple, тогда ему было всего 20 лет, а в резюме в графе «образование» – лишь средняя школа. Тем не менее, он построил успешную карьеру и стал признанным экспертом в своем деле.

Вертикальный рост

Если junior-тестировщик заинтересован в профессиональном развитии, он будет расти к уровню middle, а затем и senior-специалиста по мере приобретения необходимого опыта. Как правило, перейти на следующую позицию можно уже через 1-2 года работы. На этом вертикальный рост не заканчивается. Для тех, кто способен организовывать работу внутри команды и мотивировать коллег, есть должности руководителя команды тестировщиков (team lead) или менеджера (test manager).

В компаниях по-разному выстраивают процессы карьерного роста сотрудников, но объективный критерий для повышения – это уровень квалификации. Junior-тестировщик, как правило, работает по руководством ментора и выполняет задачи от старших коллег. Когда сотруднику начинают доверять более сложные задания, позволяют самостоятельно принимать некоторые решения, то он может претендовать на уровень Middle. Senior – это уже опытный специалист, за плечами которого несколько проектов, к нему прислушиваются коллеги, его мнением интересуется менеджмент. Если вы чувствуете, что готовы перейти на новый уровень, уточните у руководства, как это можно сделать.

Горизонтальный рост

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

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

Сделайте осознанный выбор

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

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

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