Хабр, привет! Меня зовут Денис, я ведущий тестировщик в крупном банке, а ещё недавно — выпускник курса «Инженер по тестированию» в Яндекс Практикуме. В этом материале я расскажу, как «вкатывался» в IT после работы директором сетевого супермаркета и внедрял Scrum в ростовской агропром-компании, а ещё — как не опустил руки в поисках первого оффера (хотя очень хотелось).
Начало пути
В своей жизни я сменил много мест работы: работал в логистике, прошёл путь официанта, бармена и бариста, занимался отделкой и руководил бригадой, а в пике своей карьеры вне IT дослужился до директора сетевого супермаркета.

Последние пять лет на этой должности меня подтачивало желание что-то поменять. Это была тяжёлая работа, даже на позиции директора. К тому же мне хотелось зарабатывать — в нынешних реалиях с той зарплатой жить было неподъёмно.
Решился, когда встретил старого коллегу из сферы общепита. Между нами случился диалог, как в рекламе курсов:
— Я вот в IT пошёл, тестированием занимаюсь. А ты всё там же?
— Ну да… И как тебе? Сколько зарабатываешь?
— 120.
— Ого! И где работаешь?
— На удалёнке.
— Я тоже так хочу!
В общем, подумал, что раз приятель смог, то и я смогу. Взял и записался на курс по тестированию.
На первых порах мозги очень скрипели. Тест-кейсы, чек-листы, REST-запросы — смотришь на всё это и будто читаешь на китайском, не понимаешь ни слова. Я сидел и учился на работе, пока никто не видел. Вечерами, ночами. На учёбу уходило часов пять в будние дни и полностью все выходные.
Курс был недолгий, всего пять месяцев, — и уже через три я начал искать работу. Никаких инструментов, кроме «Хедхантера», я не знал. Набросал резюме (как сейчас понимаю, довольно смешное), где в опыте работы был записан только Практикум, и отправлял по 50 откликов в день. Мне кажется, что на всей платформе не осталось джуниорской вакансии, на которую я бы не откликнулся. Надеялся на чудо, но чуда не случилось. Я пробовал разные подходы, но, как мне кажется, отлетал просто по первичным фильтрам — моё резюме даже не доходило до взгляда рекрутеров. Тут ещё важно упомянуть, что я живу в Ростове, где предложений меньше, чем в Москве и Питере.
Такие моменты здорово демотивируют. Я понимал, что с одним учебным опытом в ручном тестировании шансов у меня немного, а с другой стороны, что мне было делать?
Я решил извлечь из этого процесса хоть какую-то пользу. Откликаясь на вакансии, я заметил, что иногда в них упоминаются слова, которых я не знаю. Стал активно изучать что-то новое, заодно подтягивал базу. Иногда брал какую-то неизвестную тему и читал много разных источников по ней, чтобы информация лучше отложилась в памяти. Параллельно практиковался писать SQL-запросы на SQL-EX.
За полгода у меня была всего пара собеседований, причём на места с зарплатой 15–20 тысяч рублей. И это были самые душные собеседования в моей жизни! Мне задавали все вопросы, которые в принципе можно придумать, спрашивали, как работают сети, TCP, UDP, протоколы шифрования… В общем, ничего не складывалось.
Долгожданный оффер
В свою первую компанию я попал случайно — просто человек со смешным и нецензурным ником (что-то вроде facker007) @RnDabнаписал мне в личку на Хабре: «Привет! Нам нужен тестировщик. Не хочешь пройти собес?» К тому моменту я провёл полгода в безуспешных поисках, а руки почти опустились. Согласился.
Оказалось, меня позвали собеседоваться в крупную ростовскую агропром-компанию, которая специализируется на производстве комбайнов, но создаёт и IT-продукты для цифровизации агротехнологий.
Собеседование прошло спокойно, совсем не так, как предыдущие на 15–20 тысяч. Все прекрасно понимали, что я только после учёбы, и интересовались в основном софтскилами. Мы хорошо пообщались, посмеялись. Технических вопросов было не больше пяти, а в конце мне дали задание — потестировать «боевой» сайт. Я быстро нашёл больше 30 ошибок, часть из которых были критичными и блокировали работу пользователя, всё расписал и прошёл проверку.

Меня взяли на работу, дали технику. Это было первым, что меня удивило. Везде, где я работал до этого, к сотруднику относились как к паховой лошади — а тут спрашивают, интересуются, что нужно для работы, точно ли всё комфортно.
Но были и проблемы. Самая главная — IT-направление в компании было молодым. Я был первым и единственным тестировщиком, никто особо не знал, зачем я нужен и как должна строиться моя работа. Подход к разработке в компании в то время тоже складывался стихийно. Требований как таковых не было — только представления в голове у проджекта. В компании вообще не хватало менеджеров из IT. Всё это сказывалось на качестве продукта, причём будто никто кроме меня не видел, что в нём есть недоработки.
Я решил не мириться с проблемой, а придумать, как всё исправить. Начал читать, какие существуют методологии разработки, какие инструменты можно использовать, чтобы структурировать работу. Я потратил на это полтора месяца, после чего начал внедрять то, чему научился.
Коллегам было сложно привыкнуть к доскам и таск-менеджерам с описанием задач, спринтам и синкам, но эффект не заставил себя ждать. Тестирование стало полноценным этапом в пайплайне разработки. Продукты стали качественнее. В одной из трёх команд мой Scrum-бан-подход прижился сразу и крепко. Вторая взяла часть инструментов и улучшила процессы. Третья забила. Спойлер: её в итоге распустили. Удивительное совпадение, правда?
Моя работа тоже, естественно, поменялась. Если раньше мне приносили случайные задачи, то теперь я начал изучать, как покрывать тестами создающийся продукт. Одно дело, когда ты попадаешь на проект, где это уже реализовано и есть чёткие инструкции, а другое — когда сам придумываешь, как всё структурировать, писать вложенность и так далее. Спросить не у кого, в интернете готовых ответов тоже нет. Ну то есть их не может быть в принципе. Вариантов, как вести тестовое пространство, много — как тебе кажется правильным, так и веди. Приходилось экспериментировать.
Со временем у меня стало так много задач, что перегрузку заметили все, включая проджектов, — встал вопрос о втором тестировщике. У меня спросили, есть ли кто на примете, и я первым же делом написал в свой телеграм-канал. Откликнулась одна девочка из Ростова. Очень волновалась и переживала, но собеседование прошла даже лучше, чем я. Так у меня появилась напарница.

В будущем, я надеюсь, ей пришлось полегче — я рассказал, как всё работает, предложил придерживаться недавно созданного плана. Мы довольно быстро разгрузили задачи и поставили процессы на поток. У меня появилось больше свободного времени, которое я стал уделять прокачке знаний. Мануальное тестирование я уже освоил, да и будем честными, если попрактиковаться, то в нём окажется не так уж много сложных моментов.
Меня привлекла автоматизация. Я ленив от природы, и меня привлекала мысль, что то же, что я делаю руками, машина может делать за меня. Начал осваивать Java — стал плотно общаться с коллегой-разработчиком, который рассказал мне, что такое среда разработки, как вообще пишется код, поделился базой. Я очень ему благодарен и уверен, что без него мне было бы куда сложнее (Фаёз, передаю тебе привет!). Через месяц я решился написать свой первый автотест для рабочего проекта. Думал, что если получится, будет польза. Не получится, будет опыт.

С ростом навыков я понял, что хочу большего — вырасти в заработке, заниматься новыми, более разнообразными задачами. А значит, пора идти дальше.
Снова поиск
Я оформил резюме на «Хабр Карьере». Поставил высокую желаемую зарплату, написал про свой опыт, поменял уровень с джуниора до мидла. Может, это было не совсем честно, но я общался с синьорами, которые знают меньше, чем я. И также знаю джунов, которые давно меня обошли. Так что всё это субъективная история.
А ещё я немного схитрил, указывая стаж. К тому моменту я занимался тестированием 11 месяцев, а автоматизацией — всего пять. Но пара обтекаемых формулировок и voilà — создаётся впечатление, что у меня почти год опыта написания автотестов. Чуткий HR может обратить на это внимание, тем более я всегда был готов честно рассказать об опыте на собеседовании, но не буду лукавить — кажется, моя хитрость сыграла мне в плюс. Меня стали приглашать на собеседования.
Все интервью, которые я проходил, были на должность автоматизатора тестирования, причём на разных языках, хотя изучал только Java. Суть работы была одинаковой, отличался, как правило, только синтаксис, его я старался подтягивать прямо перед интервью. Я прошёл несколько собеседований из спортивного интереса, и тут мне написали из крупного банка. Я подумал, что меня точно не возьмут, но вакансия интересная.
Работа в банке
Созвонились с HR’ом. Я честно признался, что переживаю, и мне сказали, что зря — команд много, не пройду в одну, попытаю удачу в другой. Коллеги тоже поддержали, посоветовали представить, что я просто иду пообщаться с умными людьми и посмотреть, как проходят собеседования в крупных компаниях. Это меня подуспокоило, хотя я всё ещё был уверен, что не пройду, завалюсь на каком-нибудь из 500 вопросов или лайвкодинге.
Но всё прошло клёво! Это было самое лёгкое собеседование в моей жизни. Вопросы разделили на две части: про мануальное и автотестирование. По мануальному я чувствовал себя уверенно, всё-таки опыта было много. Мог долго рассуждать, углубляться в ответы. Было мини-тестовое, с ним тоже справился.
А потом перешли к автоматизации. И тут я прямо встрял, причём на первом же вопросе. Попросили своими словами рассказать, что такое ООП. А я понимаю, что вопрос базовый, и даже чувствую, что знаю ответ, но дать его не могу. Так и сказал. Посмеялись, пошли дальше, а там были вопросы по Java — много общих и один со звёздочкой, про управление памятью и работу garbage collector. Я к этому готовился, ответил легко и без запинки.
После технического интервью была ещё одна встреча-знакомство с командой, и я получил оффер.
Работа в большом банке с отлаженными процессами совсем не похожа на работу в компании с маленьким IT-отделом. У нас всё построено на микросервисах, к каждому из которых написаны огромные полотна документации, мы пользуемся Jira и Confluence. Вникать в это было непросто, но насколько же мне это нравилось после предыдущего места работы, где я порой не мог заставить проджектов вести историю изменений в wiki проекта…
Сейчас я фулстек-тестировщик. 60% работы — ручное тестирование, 40% — автоматизация. Моя команда занимается веб-сервисами для сотрудников колл-центра банка. Это и видеозвонки, и чат, и телефония. В общем, очень объёмная штука.
Я работаю здесь уже почти год и каждый день узнаю что-то новое. Всегда приходится что-то почитать или погрузиться в очередную особенность внутренней архитектуры. Мне нравится.
Советы и ресурсы для начинающих тестировщиков
Не опускайте руки. Отказов будет много, это психологически трудно выдержать. Я не представляю, как повернулась бы моя жизнь, если бы я всё-таки сдался (а я был очень к этому близок). Отклики в пустоту, дурацкие собеседования, где тебя смешивают непонятно с чем, постоянное ощущение, что ты ничего не знаешь и не умеешь… Пусть вас поддержит, что на самом деле даже в эти моменты вы не так далеки от опытных и успешных тестировщиков (они тоже знают не так много).
Прокачивайте софтскилы. Умение свободно общаться и обходить острые углы в коммуникации — это крайне важные навыки, особенно на удалёнке. И особенно в профессии тестировщика, ведь она изначально заряжена на конфликты (наша задача — буквально критиковать чужую работу).
Интересуйтесь тестированием. Работодатели хорошо видят ваши истинные мотивы. Желание заработать понятно и естественно, но вам должно быть интересно и то, чем вы занимаетесь. Горите своим делом — это всегда видно и выделяет вас среди других.
Окружите себя миром IT. Подпишитесь на тематические каналы, смотрите видео про код и разработку. И мемы, даже если не понимаете юмора — будет ещё один повод разобраться и узнать что-то новое.
Не зубрите, а вникайте. Не учите материал, а старайтесь его понять. Базовый пример: я зубрил техники тест-дизайна, особо не вникая в суть. А потом решил подойти к материалу иначе и просто стал понемногу применять техники в работе. Всё запомнилось само собой. Проще говоря, не мучайте себя. Лучше найдите свой способ эффективно усваивать информацию.
И напоследок несколько ресурсов, которые помогали и помогают мне погружаться в тестирование, SQL и Java.
SQL EX. Шикарный тренажёр с задачами разного уровня сложности по изучению создания SQL-запросов.
SQL OnLine IDE, SQL Fiddle. Ещё несколько интересных тренажёров по SQL, для продвинутых.
Metanit (Java). Идеальное место, чтобы изучить основы Java и немного разобраться в тонкостях языка.
Базовые проверки элементов веб-страницы. Удобная шпаргалка по базовому тестированию.
phind. Отличная нейронка для изучения кода. Ищет ответы на популярных площадках вроде StackOverflow.
pairwiseTool. Топовый инструмент для составления попарного тестирования.
QAшники (канал и чат). Бонус — мой телеграм-канал, куда я стараюсь выкладывать полезные материалы, и ламповый чат для тестировщиков.