Многие начинающие тестировщики надеются пройти курсы и после этого без проблем получить работу, но все не так просто, как кажется. Ребята рассылают резюме во все компании, а ответа особо никакого. Поэтому я решил написать свои размышления относительно курсов тестирования, возникшие на основании моих ошибок (когда я сам только учился) и опыта (когда запустил свои курсы).
Считается, что сфера тестирования — это самый низкий порог для вхождения в сферу ИТ. На курсы тестирования приходят и таксисты, и строители, и домохозяйки — да все, кому не лень. И возраст — от 16 до 40. Но что ждёт их после?
Предположим, в Киеве 10 школ тестирования, в каждой из них за полтора месяца обучается по 15 человек. Затем — следующий курс. Выходит, каждый месяц около сотни человек со всех школ «готовы» идти и набираться опыта.
Теперь проанализируем количество вакансий. Я открыл dou.ua, а также it.rabota.ua, и нашёл аж 5 вакансий для Trainee/Junior Test Engineer. Предположим, что вакансии в течение месяца добавляются, и в целом их 10 штук.
То есть мы имеем пропорцию 100 к 10. Или, другими словами, 10 человек на место. Но ведь на самом деле школ тестирования намного больше, вакансии изредка появляются, но их количество остается на том же уровне. Нетрудоустроенные люди с прошлых наборов курсов никуда не деваются, а тоже ищут работу. Также есть те, кто не ходит на курсы, а учится самостоятельно.
Отсюда и появляется конкурс 50, 100, 200, 400, ... человек на позицию — попасть на вакантное место не просто. HR-ы получают от 50 писем в день, в которых находятся резюме юных тестировщиков без опыта. И ситуация примерно такова: человек проходит курсы, рассылает своё резюме во все ИТ-компании, но ответов не получает. А если его и приглашают на собеседование, то первый опыт интервью редко получается успешным — волнуясь, респондент может забыть все, что знал. И в конечном итоге после
Итак, мы разобрали банальную стратегию неудачного старта в ИТ. Теперь попробуем найти хоть какой-то выход.
Алгоритм трудоустройства тестировщиком имеет 5 этапов:
1. Прохождение курсов;
2. Рассылка резюме;
3. Собеседование;
4. Ожидание;
5. Получение работы.
Сегодня рассмотрим первый этап. Если эта статья найдёт радость в глазах читателей, то дальше разберем и остальные пункты.
А нужны ли курсы?
Я считаю, что не нужны. Со своего опыта могу сказать, что на всех курсах, где я был, я получил очень немного знаний. Или попадался плохой учитель, который рассказывал больше про свой опыт, а не учил решать базовые и элементарные задачи. Или давали сухую теорию без практики, или быстро пробегались по важным темам, не обращая внимания на тех, кто отстал и не понял азы.
Я не поддерживаю вариант обучения на курсах и хочу рассказать, как овладеть профессией самостоятельно. Обойти эпопею с курсами поможет Google — неиссякаемый источник любой информации, где вы найдете все, что вам надо. То, что вам рассказывают на курсах, уже взято оттуда, проанализировано и структурировано. На занятиях эту информацию вам подают «на тарелочке», но ведь ее можно достать и своими усилиями. Отыскивая нужные вам сведения самостоятельно, вы набираетесь опыта.
Когда я только начинал свой путь тестировщика, а затем — автоматизатора, я часто обращался к программистам за советом — например, почему у меня не работает код. И после очередного раза меня все дружно начали посылать в Google и YouTube. Я изначально не оценил пользы послания, но когда поработал без всякой помощи, то понял, что могу решить любой вопрос с помощью этих двух источников. Это ощущение пришло не сразу, понадобились месяцы. А скорость решения разнообразных постепенно вопросов увеличивалась в разы.
Многие считают, что самому тяжело сконцентрироваться, а на курсах дают готовую базовую информацию — каркас, на который можно опираться, к тому же, там можно рассчитывать на помощь коллектива. Возможно, курсы — хороший вариант для тех, у кого:
— есть лишние деньги;
— проблемы с самодисциплиной или нехваткой общения.
Но необходимо понимать, что всё не достанется просто так. Преподаватели знаний в рот не положат, эйчары просто так на собеседование не позовут и работу не предложат. Увы, так не работает.
Хотите платить деньги (3k грн и больше) — платите, но потом не говорите, что вы закончили курсы, получили немыслимо красивый сертификат, а найти работу не можете. Всё дело не в курсах, а в вашем желании и мышлении. И не важно, техническая специальность у вас или нет. Я, например, по образованию экономист, и это не помешало тестировать и программировать в автоматизации.
Что учить самостоятельно
Для тех, кто не хочет платить и желает самостоятельно во всём разобраться, я советую следующую методологию учёбы, которую испытывал на своих курсах по тестированию. Мои уроки были бесплатными — я сделал их ради удовольствия и помощи друзьям и близким, которые хотели жить по-другому. Было 3 набора людей по
Дело не в том, чтобы дать людям информацию с практикой. Нужно выработать у них правильное мышление, научить тому, что они могут сами найти ответ на любой вопрос и решить поставленную задачу.
Итак, моя программа:
1. Базовые знания
Начните с чтения простой книги по тестированию, которая даст вам азы, покажет всю прелесть этой области. Разберитесь с понятиями: тест-кейсы, чек-листы, модели и методологии тестирования, баг репорты и т.п.
Я рекомендую «Тестирование DOT COM» Романа Савина. Она большая, но читается на одном дыхании. Написана простым языком со смешными вставками.
Также неплохо посмотреть по разным сайтам, какие определения в тестировании приняты для разных обозначений, названий тех или иных процессов. Тогда на собеседовании вы сможете оперировать несколькими вариантами ответа и с разной стороны описать проблему и решение вопроса.
Занимает времени => 1 неделя
2. Практика
Следующий шаг — написание тест-кейсов, баг-репортов и прочей документации. Например, можно прокручивать варианты или расписывать, как бы вы тестировали разные предметы: чашка, кофе-машина, дисковод, кран, лист бумаги, карандаш, гитара, мыльный пузырь, дверная ручка. Чем чаще вы будете это делать, тем легче вам будет отвечать на собеседовании.
Например, структура ответа на вопрос о том, как протестировать поле для ввода:
1. Позитивные сценарии;
2. Граничные значения;
3. Эквивалентные классы;
4. Негативные сценарии;
5. Еще придумайте свои варианты.
Посмотрите вот это видео, оно очень полезное для разнообразного виденья:
Тренируйтесь писать тест-кейсы и баг-репорты с полями:
1. ID;
2. Summary;
3. Description;
4. Severity/Priority;
5. Expected result;
6. Actual result;
И не важно, где это будет — в Jira или Word, или даже в вашем уме.
Занимает времени => 1 неделя
3. SQL
Здесь вам пригодятся следующие сайты:
— w3schools.com/sql
— quizful.net/test
Тут — и теория, и практика по написанию запросов к базам данных. В последнем найдёте не только SQL. Стандартные вопросы по SQL: select, update, insert, delete, join (left, right, full), where, like, functions. Но всё-таки лучше ориентироваться и во всех остальных.
Занимает времени => 1 неделя
4. Unix
Скачайте и установите Linux. Например, Wubi вам отлично в этом поможет. И Windows не попортите, и удалить легко сможете. Как его установить — Google вам в помощь. :)
Найдите перечень базовых команд, начните применять их для всех возможных операций. Без интерфейса, а через командную строку.
Занимает времени =>
5. Selenium
Знания по автоматизации лишними не будут, хотя не думаю, что они вам сразу понадобятся. Опять же, идём в Google или на YouTube.
Посмотрите стартовый урок по IDE. Потом, если понимаете программирование, переходите на WebDriver. Если нет, начинайте понемногу учиться кодить, но не увлекайтесь, — сейчас это не профильное ваше задание. Разберите базовые команды Selenium IDE и хорошо с ними попрактикуйтесь.
Относительно программирования советую начинать изучение с основ C# или Java. После, если захотите, сможете без проблем в течение двух недель перейти на любой другой язык.
Мой путь был следующим: C => C++ => Java => Ruby
Занимает времени =>
6. Сети
Немаловажным фактором являются знания в сетях, необходимо понимать принцип работы. Как минимум, вы должны знать, как сделать локальную сеть у себя дома.
Выучить бэкграунд вам поможет следующий материал — статья на habrahabr, это нулевая часть цикла «Сети для самых маленьких». Если сложно читать, есть видео на ютубе. Мне очень помог урок 2. Важно разобраться, что такое OSI, TCP/IP, HTTP, как проходит PING между двумя компьютерами.
И на собеседованиях я часто получал вопросы относительно сетей.
Занимает времени =>
7. Английский
Без английского будет сложно, поэтому советую или найти друзей-американцев, или пойти все-таки на курсы. В Киеве могу посоветовать бесплатные курсы английского с живыми американцами, куда я сам ходил: Big City English Club (Вернадского, 4).
Есть, конечно, украинские компании, где английский не нужен, но их довольно мало. Английский желательно учить с самого начала, чтобы мозг работал параллельно всем остальным технологиям.
Занимает времени =>
Другое
Бывает, что в вакансии попадается что-то нестандартное, что вы не учили на курсах или не разбирали самостоятельно. То есть инструменты, которые зависят от проекта. Например: XML, JSON, HTML, CSS, XPath, CssSelectors, RedMine, TrackStudio, PivotalTracker, Jira, GIT, SVN, VMware, Selenium RC/GRID, SOAP-UI, TestComplete, Ranorex, Continious Integration Servers и т.п.
Но большинство таких технологий учатся за неделю. Если видите незнакомую технологию, сядьте перед монитором, и потратьте
Итак, до вашего первого собеседования ответы на все основные вопросы должны быть выучены на зубок. Только отстроив и заполнив так называемый каркас знаний, вы имеете шанс получить желаемую должность.
Как видим, весь процесс обучения займет ориентировочно
Что поможет получить работу
Документ по окончанию курсов, к сожалению, не поможет. Тренеры могут рассказывать, что их сертификат катируется среди работодателей, но реальность более сурова — эйчары все равно не отвечают на отправленные резюме, если нет опыта работы. Кому нужен тот сертификат? А вот настоящий опыт с гуглом и ютубом — ценное преимущество. Если вы протестируете несколько сайтов с помощью тысячи тест-кейсов с разными поисковыми данными — это уже что-то.
Можно написать в сопроводительном письме к резюме, что вы готовы поработать на фирму бесплатно 3-... месяца. У меня знакомый бесплатно работал 6 месяцев программистом (специализировался на авиации) — научился, и теперь неплохо живёт.
Вам важно попасть в сферу ИТ и получить практический опыт. Не бойтесь недополучить $100-500 в первые месяцы. Подработайте где-нибудь в вечернюю или ночную смену. Сейчас вам главное попасть в сферу ИТ и получить практический опыт, а всё остальное приложится. Очень важно полюбить эту профессию, а не гнаться за деньгами.
Ещё один вариант: если у вас есть знакомый в сфере программирования или тестирования, попросите его платить вам $30-50 в месяц за то, что он будет вам давать что-то тестировать. Конечно, это не много по деньгам, но это опыт, и потом вы сможете смело написать в резюме: freelance, 2 месяца. Это будет честно, ведь вы получили реальный практический опыт.
Кстати, многие компании не показывают все вакансии на it.rabota.ua. И часто стараются их закрывать внутренними силами. Лучше всего делать так: на jobs.dou.ua/ratingsсмотреть список компаний, а потом открывать официальный сайт каждой и изучать открытые вакансии, и просто отсылать резюме независимо от того, есть там вакансия или нет.
Как мне кажется, сейчас нужно быть в разы более проворным и смекалистым, чем
Выводы
Я уверен, что еще много людей пойдут на курсы, и большинство из них будут разочарованы, не найдя потом работу, даже не побывав ни на одном собеседовании.
Согласитесь, если вы не пошлина курсы и не получили работу, то, как минимум, вы не потратили деньги просто так. А если пошлии не получили, то потраченные деньги потом долго будут висеть в файле «log» ваших мозгов.
Здесь вам выбирать путь. Если есть желание, найдется и способ.
Будут вопросы — пишите: igor.nikityuk@gmail.com, skype: igor_nikityuk_