Хотел устроиться Python-разработчиком, стал мидлом в QA-отделе — как я искал первую работу

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Привет! Меня зовут Юра, и в этой статье я хочу поделиться своим опытом поиска работы. И это вряд ли блестящая история успеха — на этом пути нашлось место и самым неожиданным факапам, и офферу от галеры, и отчаянию. Спойлер: на работу я всё-таки устроился, хоть и совсем не в том качестве, в котором планировал.

Точка отсчёта

Начну с момента, когда я только начал поиски. У меня за спиной была прочитанная книга Пола Бэрри «Изучаем программирование на Python», почти пройденный курс «Python-разработчик» в Яндекс Практикуме, а ещё немного опыта сверху — тогда мы вместе с одногруппником писали сайт для Joystick161, магазина видеоигр в Ростове. Я дружу с его директором и сам предложил ему помощь. Для меня это было полезной практикой, а у него появился новый сайт вместо сделанного в конструкторе.

Сайт, который мы сделали для моего друга
Сайт, который мы сделали для моего друга

В остальном у меня был тот же набор знаний, что и у большинства не самых сильных студентов. Я работал в центре диагностики и мониторинга устройств инфраструктуры РЖД, там была бешеная загруженность, далеко не в рамках «с 8 до 17 часов». На освоение максимума информации просто не было времени. Поэтому мой стек был скромным: я знал базу Python (как окажется скоро, не очень хорошо), благодаря проекту подтянул Django и Django REST Framework. Было общее понимание CI/CD, Docker.

Попроще стало на этапе работы над дипломным проектом. Впереди оставались в основном проверки — я понял, что успеваю, и решил искать работу.

Первый оффер и увольнение через два дня

Я сделал резюме и стал откликаться на hh.ru и «Хабр Карьере». Дёргал всех знакомых из IT — вдруг где-то нужны разработчики или хотя бы стажёры. Мониторил тематические каналы в Telegram и сообщества IT-компаний в Ростове, чтобы не пропускать митапы. На них знакомился с IT-специалистами, рассказывал о себе, спрашивал о вакансиях, просился на собеседования. На тот момент всё было безуспешно, но в будущем такая тактика мне помогла.

На hh.ru пришлись где-то 70% моих усилий. Ещё 10% — на «Хабр Карьеру». А оставшиеся 20% в равной степени распределились между источниками поменьше. Всего я насчитал 297 отправленных откликов. Ответов было немного, но что меня удивило: первое предложение я получил всего через две недели.

Небольшой местной компании требовался Python-разработчик на джуниорскую позицию. Стек совпадал с моим. Мне прислали тестовое задание.

Тестовое задание
Тестовое задание

Я отправил HR готовый API и получил ответ, что нужна ещё и вёрстка. Я нарисовал шаблоны в Bootstrap и настроил импорт данных через Django. В итоге тимлид согласился, что сам ошибся в формулировке тестового. Доработать проект было легко, но сейчас я понимаю, что уже в тот момент мне стоило насторожиться.

Так я получил оффер. Первый день показался ничего — меня добавили в Jira, рассказали про задачи. Я решал простенькие кейсы: прикрутить к сайту авторизацию, написать пару микросервисов на DRF. Поначалу мне нравилось. Закралась мысль: неужели я так просто нашёл свою первую работу? Но потом наступил второй день.

Я изучил сайт компании и понял, что у него не работают редиректы и кнопка «Назад», а если покликать по ссылкам в хедере, то всё вообще ломается. Профессиональная команда так писать не может. Тут же прилетает задача: прикрутить платёжную систему к интернет-магазину. Я этого никогда не делал. Начал читать, понял, что подходов к решению много и что задача-то совсем не джуновская. Обратился за помощью к тимлиду: попросил рассказать, как они делали это раньше, описал возможные варианты и предложил одну из реализаций. Тимлид в помощи отказал — сказал, что при найме компания рассчитывала, что я буду справляться сам.

Тогда я написал в телеграм-группу наших ростовских айтишников и узнал, что компания — галера, берёт заказы на биржах и передаёт их своим сотрудникам. Своих разработчиков, кроме меня, у них нет, и текучка там огромная, а когда кто-то не справляется с задачей, что рано или поздно происходит, его увольняют.

Тимлид подтвердил, что разработчик в компании только я и код там больше никто не пишет. В общем, с таким же успехом я мог и сам работать на фрилансе. И какой смысл? В общем, первый опыт был негативный, и из компании я ушёл.

Попал на интервью — и в ловушку новичка

Так я вернулся к поиску. В следующий раз помогло сарафанное радио. У друга — владельца магазина видеоигр, которому мы делали сайт, много покупателей-айтишников. И вот у кого-то из них он спросил, не найдётся ли для меня вакансия. Показал моё резюме. Так меня пригласили на собеседование в WIS Software, очень крутую ростовскую компанию. 

И это был мой первый и самый яркий факап. Я серьёзно готовился, повторял Django и DRF, думал, как решать продуктовые задачи. А меня гоняли только по базе Python, и оказалось, что у меня в ней куча пробелов.

Например, меня попросили написать маркером на доске простенький алгоритм. Есть строка из четырёх слов, задача — развернуть её задом наперёд. Мне нужно было написать на доске код и рассказать, как он работает. Я простоял в ступоре 10 минут, хотя, конечно, знал, как она решается. Я так привык работать в IDE, где всё подсвечивается, что из головы, как выяснилось, вытянуть элементарные знания мне не под силу.

Элементарный код, который мне не удалось написать без IDE
Элементарный код, который мне не удалось написать без IDE

Были и каверзные вопросы. Например, спросили, могут ли ключи в словаре быть изменяемыми. Я ответил, что не могут. Но вдогонку приходили новые и новые вопросы. А кортежами? А если кортеж из списков? И тут легко посыпаться, особенно если разволноваться.

Мне до сих пор обидно, что я туда не попал, но зато это собеседование подсветило все мои пробелы. Решил, что, пока не подтяну основы, на интервью ходить не буду.

Как мне почти удалось устроиться DevOps-инженером

Я повторил основы и стал откликаться заново. Я искал вакансии везде, где только мог, подключал нетворкинг, ходил на несколько митапов каждый месяц. И на одном из них меня осенило. Зачем общаться только с разработчиками? Ведь на мероприятия ходят и HR-специалисты, и они, в отличие от программистов, всегда знают об открытых вакансиях в компании.

Гостем на том митапе был представитель HR-отдела из ростовской компании Zuzex. Я набрался смелости, познакомился и спросил о вакансиях. Оказалось, что компания ищет DevOps-инженера, причём готова обучать джуниора. Я заинтересовался.

Тестовое задание
Тестовое задание

В тестовом задании понадобился стек, которого у меня не было. Настройка phpMyAdmin и триггеров через Elasticsearch… Это я видел впервые. Начал гуглить, писать знакомым, спрашивать ChatGPT. И всё решил.

На собеседовании спрашивали базу Python. Я, уже наученный горьким опытом, проверку не завалил. По теории DevOps были проблемы, потому что это всё-таки не моя сфера. Я не прошёл, но зато получил честный фидбэк и узнал, как подтянуть навыки по DevOps. Мегакрутой опыт и, как мне на тот момент показалось, уже какой-то успех.

Выгорание и новое резюме

После хорошей, но неудачной попытки я вернулся к поискам и столкнулся с тем, что hh.ru как не работал, так и не работает. Нетворкинг тоже — знакомые уже перебрали все вакансии, и мне ничего не подошло, отличался либо стек, либо требуемый уровень опыта. Время поисков на тот момент приблизилось к трём месяцам, а количество откликов уже перевалило за 200. Кроме этого, я ушёл из РЖД и занимался только подработками. Всё это очень давило. Поиск работы был изнурительным. Я начал выгорать.

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

Главный — сместить акценты в портфолио. Весь мой опыт был подсвечен как учебный, плюс проект для Joystick161. Катя предложила оставить всё как есть, но оформить учебные проекты как проектную деятельность и добавить небольшие программы, которые я писал в рамках тестовых заданий.

Сейчас описание проектов в моём резюме выглядит так
Сейчас описание проектов в моём резюме выглядит так

На отклики стали отвечать чаще. Потом, когда я спрашивал у работодателей обратную связь, узнал, что многие из них относятся скептически к выпускникам онлайн-школ. Они объясняли это тем, что многие студенты не развиваются после курсов. Кто-то мог и вовсе схалтурить на обучении. Ну и выпускников просто много — если кандидатов десятки, то среди студентов с похожими резюме и проектами будет трудно кого-то выделить.

А ещё я расширил выборку и искал вакансии не только Python-разработчиков, но и DevOps-инженеров, инженеров по тестированию. Перестал искать предложения только в Ростове и начал рассматривать удалённую работу.

Наконец, удача — как я устроился на работу

После очередного отклика меня позвали на собеседование. Это была вакансия инженера по тестированию в компании «ТТК Цифровые решения». На первой встрече проджект-менеджер спрашивал меня, как я учился, что освоил, как нахожу общий язык с коллегами.

В тестовом задании нужно было протестировать программу. Что-то вроде калькулятора, который высчитывает площади фигур и отрисовывает их. Нужно было найти 28 ошибок в интерфейсе. Я быстро сориентировался, нашёл 20-часовой курс на Stepik, прошёл его за один день и решил тестовое. Ну как решил... Нашёл 27 ошибок из 28, упустив самую очевидную — что фигура отрисовывалась не по центру. Тем не менее меня пригласили на техническое собеседование.

На нём нужно было написать мини-тесты для коротенькой программы. По сути, API, который обращался к каким-то эндпоинтам. Ничего сложного — мы такое проходили. Попросили показать проекты и сказали, что свяжутся в течение недели. И связались — на следующий день меня пригласили на финальное собеседование. Правда, предупредили, что у меня есть пробелы по теории тестирования и их стоит подтянуть.

Последний этап оказался для меня самым простым. На нём тимлид задавал вопросы по теории. После этого меня погоняли по софтскилам и снова пообещали связаться. Через два часа я получил оффер.

Я работаю в «Цифровых решениях» уже почти полгода. Сейчас я занимаю должность ведущего специалиста в области тестирования. Наша компания разрабатывает CRM-системы — у нас много госконтрактов, так как российские организации переходят на наше ПО с зарубежного. Например, мы работаем с РЖД, «Газпромом». И для каждой компании разрабатываем уникальные решения.

На позиции ведущего я также менторю тестировщиков. Один, например, уверенно пишет автотесты спустя два месяца. Помогает мой опыт обучения, ну и то, что написание автотестов — это всё-таки гораздо проще, чем программирование.

Спустя шесть лет работы в РЖД я поймал себя на мысли, что наконец-то занимаюсь тем, что мне нравится. И это мой самый крутой результат

Я стараюсь не забывать про разработку. Например, когда есть время, придумываю и пишу что-то для Joystick161. Но фокусируюсь я на тестировании. Мне нравится автоматизация, и в ней тоже много вещей, в которых интересно разбираться.

Как продолжать искать работу, если вы новичок и вот-вот опустите руки

Какие-то из моих рекомендаций прикладные, и ими можно руководствоваться в процессе трудоустройства. Другие — фундаментальные, и они говорят о том, насколько просто вам будет как искать работу, так и работать в IT.

Учите базу. Работодателю вряд ли будет интересно, насколько глубоко вы знаете фреймворки и погружены в продуктовую разработку. А вот базовую теорию языка спросят наверняка, потому что это фундамент. Без прочного фундамента всё развалится. Как у меня на том злосчастном интервью в WIS Software.

Вот как я повторял теорию:

  • Перепрошёл уроки Практикума, в частности вводную часть и теорию объектно-ориентированного программирования.

  • Прошёл курс Сергея Балакирева «Добрый, добрый Python» на Stepik — он бесплатный, и в нём есть все основы.

  • Перечитал «Изучаем Python» Марка Лутца.

Ищите работу везде, где можете. Используйте нетворкинг, пишите всем знакомым из IT и ищите вакансии на всех площадках. 

Поделюсь своим набором подписок в Telegram и VK, где я искал вакансии, новости о митапах и просто интересные посты:

  • QA Вакансии. Работа для тестировщиков. QaRocks

  • Web-Development Job Offers

  • junojobs → junior вакансии и стажировки в IT

  • Python Job | Вакансии | Стажировки

  • НМГ Тех | Работа в IT и Digital

  • Точка входа в IT

  • Python вопросы с собеседований

  • Python Nation

Источник: https://habr.com/ru/companies/yandex_praktikum/articles/780888/


Интересные статьи

Интересные статьи

15 декабря на Хабре стартовал очередной сезон Хабра-АДМ. Осталось меньше недели до жеребьёвки в Клубе анонимных Дедов Морозов 2023-2024 на Хабре.
Если вы спросите, чем мне запомнился 2009 год, я смогу назвать не так много вещей. Для начала – смерть Майкла Джексона, которая шокировала как меня лично, так и весь мир в целом. Также вспомню спорное...
В данной статье расскажу о своем подходе к использованию разных уровней детализации 3D моделей, благодаря которому мы экономим память и ускоряем загрузку деталей.
Сегодня обзор брокеров Армении и Грузии и об открытии брокерского счета на постсоветском пространстве.
Аудиофилов на Хабре принято не любить. Семь лет назад я написал на (тогда еще отдельном ресурсе) Geektimes эмоциональный пост на эту тему: дорогая техника и золотые провода не обязательны...