Профессия тестировщик: кто он, как туда прийти и что нужно знать
Фриланс, аутсорс или инхаус: что выбрать тестировщику, чтобы работа была не в тягость, а способствовала росту.
Сегодня соцсети предлагают обучиться новой востребованной специальности — тестировщика программного обеспечения. В общих чертах, о чем речь, понятно. Это специалист, который составляет план проверок и производит исследование программ и приложений, приводит в порядок код и прочее. Действительно ли просто стать тестировщиком и насколько интересна эта работа, мы спросили у ребят, которые уже давно работают в этой профессии.
Практически ежедневно на рынке появляются новые IT-продукты. От того, пойдут они в массы или нет, важен не только маркетинг, но и эффективность работы данного проекта. Поэтому, прежде чем выпустить приложение или программу, их нужно проверить. Этим и занимается тестировщик. На его долю приходится вся "черная" работа: выявить ошибки и уязвимые места, выяснить, адаптировано ли приложение под разные устройства. Если такая необходимость возникает, то именно тестировщик отправляет IT-продукт на доработку. Для таких тестов нужны специальные знания, и разработчики, как правило, не занимаются этим самостоятельно.
Чтобы убедиться в том, что профессия востребована, достаточно заглянуть на сайт hh.kz, где масса предложений и требования разнятся. Кого-то устраивают новички, другим необходим стаж от 3 до 6 лет. Отсюда и уровень заработной платы — он доходит до 500 тыс. тенге, возможно, можно найти и выше.
Своей историей с нами поделился Антон Воронин, QA-инженер отдела обеспечения качества продуктов "Beeline Казахстан", ответив на самые популярные вопросы:
Я окончил КазИТУ по специализации "Радиотехника, электроника и телекоммуникация", а в тестирование попал через 14 лет опыта работы в ИТ-сфере. В разные периоды был техником развития сетей, хэлпедск (поддержка пользователей), системным администратором, руководителем IT-отдела.
Однажды задумался, куда дальше можно развиваться, где могу применить все свои навыки и научиться новым технологиям. На просторах интернета попалось объявление одной из онлайн-школ об открытии набора на обучение профессии "тестировщика". Меня это направление заинтересовало. Стал изучать теорию тестирования на различных сайтах, прочитал от корки до корки книгу Святослава Куликова "Тестирование программного обеспечения. Базовый курс" и прослушал его бесплатные лекции, подписывался на различные каналы QA-блогеров в YouTube и Telegram.
Примерно через четыре месяца после интенсивного самообучения я успешно прошел собеседование на позицию тестировщика. Уверен, в любой профессии необходимы знания и практический опыт. Высшее техническое образование, прохождение курсов помогут вам в построении карьеры. Работодатель сегодня ценит грамотных специалистов. Но я знаю случаи, когда человек отучился совсем не в техническом вузе и благодаря упорству, самообучению, смог переквалифицироваться на QA-инженера.
Сегодня всех зовут освоить эту профессию, независимо от технических навыков. Это реально?
Профессия тестировщика — это хорошая возможность попасть в IT. В самом начале карьеры будут задачи на проведение тестирования определенных компонентов и функционала по готовым тест-кейсам и сверки ожидаемых результатов с фактическими. С получением опыта тестировщик может вырасти до QA-инженера — специалиста, который следит за качеством продукта на всех этапах разработки.
Да, сегодня на рынке много предложений об обучении профессии тестировщика/QA-инженера. Многие рассчитаны на разные уровни технических навыков. Все зависит от целей: если хотите поменять работу, научиться новому, то доступны различные инструменты, и курсы могут быть отличным вариантом для их достижений. Ознакомьтесь с отзывами, программой обучения, поищите в интернете бесплатные материалы. Постарайтесь понять, насколько вам это подходит и откликается в душе.
Главное — помнить, что курсы не дают 100%-ную гарантию трудоустройства. Требования работодателей высоки. Нужно усердно прокачивать себя в теории и в практике.
Почему вдруг эта специальность стала такой популярной?
Чтобы завоевать рынок и любовь пользователей, твой продукт должен быть высокого качества. Если твое приложение неудобное, постоянно ломается, люди перестанут им пользоваться, а значит компания понесет убытки. Для минимизирования рисков нужны специалисты в команду, которые будут обеспечивать качество на всех этапах жизненного цикла продукта. То есть, с ростом рынка специальность становится популярнее.
В чем состоит ваша работа? Насколько она однообразна от проекта к проекту? Можно ли говорить о рутине?
В Beeline я работаю над разными продуктами, связанными с B2B сектором. Среди них, "Личный кабинет B2B" — веб-сайт для управления группой корпоративных номеров и Digital Sales — веб-приложение для продавцов B2B, благодаря которому автоматизируется рутинная работа, ускоряются процессы по продаже и подписанию документов с клиентом.
Моя работа как QA-инженера очень обширна, интересна и назвать ее рутиной я не могу. Я подключаюсь на всех этапах разработки: анализирую и тестирую требования и техническую документацию; продумываю сценарии тестирования, какие использовать техники тестирования и инструменты, чтобы минимизировать появления багов в будущем; тестирую функционал, отлавливаю баги; отслеживаю процессы исправления багов; повторно отслеживаю качество ПО, покрываю функционал автотестами; анализирую обратную связь от заказчиков и пользователей по продукту.
Где лучше работать: на аутсорсе или в компании? Имеется ли тот и другой опыт?
Цель команды разработки в продуктовой команде и аутсорсе одна — предоставление качественного и полезного продукта пользователям. Отличие может быть только в организационных моментах. Где лучше или хуже работать, зависит от обстановки в самой компании и команды. У меня не было опыта работы на аутсорсе, я сразу устраивался в продуктовые компании.
Здесь для меня большим плюсом является то, что есть возможности влиять на качество продукта. У нас в IT блоке работают около 700 человек, которые создают продуктовую экосистему для 10-миллионной базы абонентов и не только. При этом мы говорим про культуру экспериментов, кайдзен, Agile и право на ошибку.
В чем заключается ответственность тестировщика за свой продукт?
Чтобы потребитель с удовольствием пользовался качественным продуктом необходимо продумать и сымитировать все возможные действия и ситуации, при которых в продукте могут возникнуть ошибки, и сообщить о багах команде разработки для их исправления. Чем раньше будут найдены недочеты, тем меньше неудобств испытает пользователь, а компания сможет больше сэкономить времени и денег на доработку.
Отличие инженера по ручному тестированию и автоматизированному?
При ручном тестировании инженер проверяет работоспособность приложения вручную. По сути, он имитирует действия пользователя и убеждается, что программа работает корректно при всех сценариях.
Автоматизированное тестирование предполагает проверку приложения с помощью программного обеспечения. Оно подходит в тех случаях, когда у нас накапливается множество тестов и их надо проверять раз за разом, или необходимо использовать большие объемы данных. Инженер подготавливает тестовые данные, тест-кейсы, настраивает инструменты, устанавливает расписание запуска тестирования. По завершению автотестов формируется отчет с результатами. Тестировщик анализирует данные и передает их команде разработки
Мифы о профессии?
Учиться тестированию не нужно: нечему. На самом деле, это не так. Чтобы развеять этот миф, достаточно посмотреть на требования к кандидатам от работодателей. Они велики. Работа заключается не в простом нажатии кнопок и заполнении форм. Внутри тестирования существуют свои специализации. В зависимости от проекта, нужны специалисты по ручному или автоматизированному тестированию.
Для мобильных приложений идет деление на операционные системы: Android, iOS. За 2-3 месяца невозможно освоить профессию, учиться будете постоянно. Стать тестировщиком может не каждый: все зависит от способностей и желания. Для одних тяжело стать хирургом, актером, другим — тестировщиками. Работодатели хотят нанимать высококвалифицированных специалистов.
Тестировщик — это старт в IT?
Для кого-то это будет хорошим стартом. Порог вхождения ниже, чем если сравнить с разработчиками. Со временем вы сможете из начинающего тестировщика стать опытным QA-инженером. И далее развиваться в управлении проектами или автоматизированном тестировании. Главное иметь большое желание, усидчивость и самодисциплину для развития в этой профессии.
Плюсы и минусы профессии?
- Хорошие возможности расти по карьерной лестнице. При должном опыте и экспертизе можно уйти в менеджмент или автотестирование.
- Тестировщик находится в процессе постоянного развития.
- Многие работодатели предоставляют возможность удаленной работы.
Из минусов. На ранних этапах, возможно, будет много монотонной и однотипной работы:
- Сидячая работа. Много времени проводится за компьютером в поисках багов.
Девочкам в связи делать нечего
Кто-то считает работу тестировщика скучной, но застрять на одном месте или разлюбить свое дело можно в любой профессии, если не развиваться и не повышать планку. Несомненно, немалое влияние оказывает место работы, окружение и прочее. Поэтому периодически нужно задавать себе вопросы: а расту ли я здесь, получаю ли новые навыки и, наконец, что дает мне эта работа? Важно понимать, что тестировщики не хуже или не лучше других профессий в отрасли. Это просто другая профессия.
QA и тестирование — это море возможностей для роста и развития, если ты сам готов развиваться. Хороший QA-инженер — специалист на вес золота, который влияет на качество продукта, на лояльность пользователей и в итоге на бизнес.
Мы поговорили с Юлией Панченко, Lead QA-инженером в IZI:
Будучи студенткой 4-го курса специальности "Инженер-связист" я подрабатывала в одной ИТ-компании техническим писателем. Писала различные руководства пользователя и инструкции по установке программ. Задерживаться в этой стезе не планировала, после окончания университета хотела уйти в связь.
Спустя время, оказалось, что никто с распростертыми объятиями не ждал новоиспеченного дипломированного специалиста. Где-то предлагали еще подучиться, а в одну компанию вообще не взяли по гендерному признаку. Мол, девочкам в связи делать нечего. Так моя карьера связиста закончилась, не успев начаться. Я вернулась в свою компанию и попросила развития. Мне предложили работу в отделе тестирования. За мной закрепили ментора, с которыми мы подтягивали необходимые навыки. Ежедневно мне уделяли час для ознакомления с материалом, а дома я дополнительно читала статьи, книги. Старалась максимально углубляться в тему и закрывать пробелы. Так, не имея специальных знаний, в 2015 году я начала свою карьеру в сфере тестирования, которую продолжаю и по сей день.
Сегодня всех зовут освоить эту профессию, независимо от технических навыков. Это так?
Да, есть такая тенденция. Можно освоить любую профессию без специальных знаний, было бы желание. Несомненно, будет трудно и даже не так быстро, как этого хотелось бы. Поэтому, чтобы комфортно освоить профессию, нужно иметь хоть какую-то техническую базу и иметь аналитическое мышление.
Почему эта специальность стала такой популярной?
Скорее, из-за порога входа. Относительно невысокие требования в сравнении с программистами. Начинающему специалисту достаточно обладать хорошими знаниями теории тестирования, иметь небольшую техническую базу, аналитическое мышление и желание учиться. Далее, уже обучаться по ходу работы и потребностям, ибо все сразу не изучишь.
В чем состоит ваша работа? Насколько она однообразна от проекта к проекту? Можно ли говорить о рутине?
На данный момент я занимаю позицию лида, и моя работа разносторонняя: распределяю нагрузку среди ребят, слежу за их развитием, выстраиваю процессы, обеспечиваю качество продукта на всех этапах жизни.
Конечно, рутина имеет место быть. По большей части все зависит от проекта. Если проект активно развивается, то задачи всегда будут интересные, даже если и долгоиграющие. А если проект на поддержке, то будет скучновато.
При этом, любую рутину можно скрасить — найти в проекте задачи по интересам. Ведь тестирование, это не только про тестирование, а про обеспечение качества. Оглянуться вокруг, проанализировать процесс разработки и найти что-то новое для себя на разных этапах. Попробовать анализ и тестирование требований, дизайна; поучиться автоматизации, юнит-тестированию (если раньше не умели); поэкспериментировать с другими видами тестирования (например, протестировать безопасность или устроить пентестинг).
Так, в IZI мы внедрили методологию Shift-Left тестирования и, если наскучило классическое тестирование, то можно переключиться к требованиям либо вовсе взять задачи по автоматизации.
Где лучше работать: на аутсорсе или в компании? Имеется ли тот и другой опыт?
Я работала и в аутсорс-компании, и продуктовой. Не могу сказать, что где-то определенно лучше. И там, и там интересно, получаешь опыт.
В аутсорс-компаниях чаще всего сжатые сроки, максимальный контроль и малое влияние на проект. Не все идеи воплощаются в жизнь. Есть определенный скоуп работ, который нужно выполнить в срок, а всякие новые процессы и технологии откладываются в долгий ящик, так как зачастую у заказчиков ограниченные финансы и платить за такое мало кто хочет.
А в продуктовых компаниях есть где разгуляться. Можно поэкспериментировать: менять процессы, влиять на бизнес (пересматривать работу тех или иных фичей), внедрять метрики и следить за ними. Благодаря метрикам в IZI мы выстроили процесс общения с командой технической поддержки для сокращения багов в приложении и знакомства с нашим пользователем.
В чем заключается ответственность тестировщика за свой продукт?
Я считаю, что это добросовестность. Максимально внимательно, с интересом и переживанием подходить к тестированию задач. С таким набором будет сложно допустить ошибку и принести ущерб проекту.
Отличие инженера по ручному тестированию и автоматизированному?
По-моему, инженер по ручному и инженер по автоматизированному тестированию должны иметь почти одинаковый багаж знаний, т.е я — за универсалов. Но тенденция в мире такова, что в компаниях эти направления разделены. Есть отдельная позиция на ручного тестировщика и автоматизатора. При таком разделении автоматизаторы гораздо выше по техническим навыкам. Более прокачаны в программировании по сравнению с ручными тестировщиками, которые, в свою очередь, больше обладают теорией.
Мифы о профессии
Главный — не имея технических знаний, можно работать тестировщиком. Можно, но сложно, и тогда это уже манкикликерство, как принято говорить, а не тестирование и уж не обеспечение качества. Чтобы разобраться в проблеме, приходится копать вглубь проекта. А тут нужно понимать, как устроен проект технически. Да и чтобы быть на одной волне с разработчиком, нужно разбираться в технологиях продукта.
Тестировщик — это старт в IT?
Не соглашусь. Начать можно абсолютно с разных профессий в IT. Как я, например, с технического писателя. Требования для старта в разы меньше, чем у тестировщиков.
Плюсы и минусы профессии?
Из минусов: стресс и ответственность. На инженерах по тестированию лежит огромная ответственность за качество продукта и его репутацию. Если к пользователям попадет критичный баг, имидж компании может пострадать, помимо этого ведь есть финансовые потери.
Работа с критикой. Не все разработчики адекватно воспринимают обратную связь о своей работе, отсюда возникают острые моменты. Поэтому важно иметь хорошие софт-скиллы.
Из плюсов: возможность поработать в различных сферах. Проекты бывают настолько разнообразными, что невольно проникаешься бизнес-идеей продукта. Да и важно в этом разбираться, ибо, не зная бизнеса, качество будет хромать. Мне вот удалось поработать различных сферах: нефтедобывающая промышленность, авиация, медицина, финансы. Благодаря этому опыту я расширила кругозор в этих сферах.
Раньше всех попробовать и повлиять на продукт. Наверняка, у каждого возникало чувство гордости, когда вы получали известный продукт до запуска и могли повлиять на него.
Что-то важное в конце
Если вы заметили, на одинаково предложенные вопросы, мы получили разноплановые ответы. Так и в профессии: нет единого рецепта, пути развития, отношения к делу. Каждый выбирает свое. Но одно должно быть точно у всех –желание быть востребованным. Это лучший двигатель здоровых амбиций.