javascript

Как разработчику найти работу в IT: гайд к вашему первому офферу

  • суббота, 5 апреля 2025 г. в 00:00:09
https://habr.com/ru/articles/897424/

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


Артем Геташвили

Senior Python Developer в компании Bureau 1440, ментор.

Мы задали ему много вопросов во время интервью и записали ответы. Ниже — его инсайты об этапах найма и поиска работы в IT разработчиком.

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


Шаг 0. Создайте проекты, которыми можно гордиться

Когда у вас нет опыта, проекты — это твоё золото. Но не просто программа «Hello, World» на GitHub, а что‑то, что показывает, что вы можете принести пользу. Я сам долго боялся, что мои идеи слишком простые, но потом понял: даже маленький проект может впечатлить, если он решает реальную проблему и хорошо оформлен.

Как это сделать:

  • Ищите вдохновение в жизни. Один из первых толковых проектов родился из хаоса: я очень долго искал себе комплектующие для ПК, написал бота‑напоминалку, который парсил информацию с разных сайтов и выдавал Excel‑таблицу с подсвечиванием низких цен. На одном из собеседований мы даже по этому проекту пообщались.

  • Выбирайте технологии с умом. Хотите в бэкенд? Берите Python (Django/FastAPI), PostgreSQL, Docker. Frontend? React, TypeScript, немного CSS‑фреймворков. Не знаете, что выбрать? Посмотрите вакансии мечты и ориентируйтесь на них. А еще как вариант можно использовать сайт, на котором выложены актуальные требования по вашему направлению.

  • Делайте красиво. Выложите проект на GitHub, напишите понятный Readme (что это, как запустить, какие есть эндпоинты, зачем нужно твое приложение). Добавьте тесты, даже простые unit‑тесты покажут, что вы серьёзно подходите к делу.

  • Поддерживайте жизнь в проекте. Добавьте пару фич, обновите зависимости или исправьте баг и отрефакторите проект — это покажет, что вы не из тех, кто бросает начатое.

Не бойтесь простоты. Трекер привычек, парсер погоды кажется слишком простым, но главное, чтобы это работало и выглядело профессионально. Работодатели видят потенциал, а не масштаб.

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

  • «Без идеальных проектов или тонны опыта вас не возьмут.» На деле работодатели ищут тех, кто может принести пользу, а не идеальных кандидатов. Даже простенький проект может зацепить, если он решает задачу и аккуратно оформлен.

  • «Нужно знать все технологии из вакансии.» Нет, достаточно уверенных базовых знаний и готовности учиться.

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

  • «Без диплома с IT‑специальностью дорога закрыта.» А вот и нет — самоучки и выпускники курсов тоже отлично устраиваются.


Шаг 1. Напишите резюме, которое захотят открыть

Резюме — это ваша афиша. Оно должно говорить работодателю: «Я тот, кто вам нужен!». Но делать это элегантно, а не общими фразами вроде «ответственный командный игрок». Можете верить на слово, можете проверить самостоятельно, но резюме с кучей воды не дойдет даже до скрининга с HR.

Как сделать резюме “живым”:

  • Структура: Короткий абзац о себе, ключевые навыки, проекты, опыт (даже учебный), образование.

  • Не забудьте подсветить результаты, а не просто слова. Вместо «участвовал в разработке» — «создал парсер, который ускорил сбор данных на 30%».

  • Можете адаптировать резюме под вакансию. Если просят React, выделите проекты с React. Если микросервисы — упомяните работу с Docker и FastAPI.

  • Будьте кратким. Пять страниц резюме, конечно, круто, но читать такое полотно никто не будет.

  • Добавьте сопроводительное письмо. Не копипасту, а что‑то индивидуальное под компанию.

Представьте, что вы — товар, а резюме — ваша упаковка. Покажите, чем вы полезны, и вас захотят «купить».

Шаг 2. Готовьтесь к собеседованиям как к экзамену (но без паники!)

Собеседование — это не только проверка знаний, но и ваш шанс показать себя. Я помню своё первое оффлайн интервью с пятью людьми в каморке, сказать, что оно прошло ужасно — это еще ничего не сказать.

Как подготовиться:

  • Практика всегда будет вашим лучшим другом. Попросите ментора устроить вам мок‑интервью. Вы и сами заметите, что ваши ответы на первом собеседовании и пятом будут сильно отличаться в положительную сторону при должном подходе.

  • Знайте типичные вопросы:

    • HR: Почему IT? Что мотивирует? Расскажите о сложной задаче, факапах, достижении, зарплате и пр.

    • Tech: Основы языка (типы данных, ООП, декораторы, генераторы, асинхронность), фреймворки (роутинг, ORM, паттерны проектирования), базы данных (запросы, индексы, триггеры, разница между JOIN»ами), сети (HTTP‑методы, коды ответов, TCP/UDP, REST), основы ОС (алиасы, SSH, ls, wget, curl).

  • Используйте метод STAR. На вопросах по типу «Расскажите про самую сложную задачу» отвечайте в стиле: ситуация, задача, действие, результат.

  • Готовьте свои вопросы. Спросите: «Какие задачи ждут меня в первый месяц?» или «Как вы тестируете код?» — это покажет ваш интерес. А если подготовите более индивидуальные вопросы к компании, то интервьюер добавит еще один плюсик в карму.

Личный опыт:

На одном собеседовании менти попросили решить алгоритмическую задачу за O(1). Он честно признался, что не видит тут такого решения, предложил за O(n), интервьюер попросил его написать это решение. А после, с небольшими подсказками технического специалиста они пришли к O(1). Этого хватило, чтобы пройти собеседование.

Помните, что собеседование — это диалог, а не допрос. Будьте собой, но подготовленным собой.


Шаг 3. Ищите работу активно и не сдавайтесь

Поиск работы — это марафон. У вас может уйти, как один месяц, так и три месяца с десятками отказов, прежде чем вы получите заветный оффер. Главное — не воспринимать «нет» как приговор.

Что делать:

  • Штурмуйте платформы. LinkedIn, HH.ru, Telegram‑каналы с вакансиями, Хабр.Карьера — отправляйте резюме везде. Если компания достаточно большая, то вы сможете или самостоятельно найти контакт HR, или на их сайте будет раздел «Карьера» для вашего отклика.

  • Ведите две базы. Первая — вопросы/ответы на популярные вопросы и примеры кода, а вторая — куда откликнулся, на каком этапе находится ваш отклик.

  • Работайте над ошибками. После каждого интервью думайте: что можно улучшить? Вспоминайте вопросы и старайтесь глубже разобраться в каждом, думайте о том, как это можно применить на работе.

  • Нетворкинг. Ходите на митапы и конференции, там вы также сможете познакомиться или со своим будущим коллегой, или с рекрутером, который как раз‑таки ищет вас.

Каждый отказ — это урок. Я однажды провалил собеседование из‑за слабого объяснения асинхронности, но потом около недели разбирался в ней, писал код и читал книгу Мэттью Фаулера «Asyncio и конкурентное программирование на Python». На следующем собеседовании по законам подлости меня про нее, конечно, не спросили, но через собеседование история повторилась, и я смог ответить глубже и профессиональнее.

Кстати, пока вы ведете базы и отправляете отклики, рано или поздно столкнетесь с тестовыми заданиями. Давайте разберем, когда стоит соглашаться, а когда лучше отказаться.

Тестовые задания — шанс показать себя, но не все они стоят вашего времени. Соглашайтесь, если хотя бы на 2 пункта ответили «да»:

  • Задание занимает не больше 4–6 часов. Если больше, то компания готова его оплатить.

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

  • Вам его дали после скрининга с HR, а лучше после технического интервью.

  • Вам интересна эта вакансия.


Шаг 4. Избегайте типичных косяков

  • Избегайте общих фраз. Вместо «я работал в команде» укажите конкретные достижения и роли, которые вы выполняли. Например, «Участвовал в разработке проекта X, где отвечал за Y».

  • Не идите на интервью без подготовки. Даже базовые вопросы вроде «какие типы данных есть в Python?» могут завалить неподготовленного человека.

  • Не сдавайтесь после нескольких отказов. Это нормально — получить 20 «нет», прежде чем будет 1 «да». Нормальной я считаю конверсию откликов/приглашений на скрининги 5–10%, если у вас околонулевой процент — проблема в резюме, если вас после всех скринингов не зовут на технические этапы — проблема в soft‑скиллах, если после технических не дают оффер — проблема в ваших hard‑скиллах.

  • Не забывайте о форматировании. Чёткое и удобное оформление резюме поможет рекрутерам быстро найти нужную информацию и позвать вас на скрининг.


Шаг 5. А сколько просить по деньгам?

Зарплаты в IT зависят от региона, компании, технологий и вашего опыта. Но вот примерные ориентиры по моему мнению:

  • Intern — от 0 до 80к

  • Junior — от 80 до 150к

  • Middle — от 150 до 300к

  • Senior — от 300 до 500к

Также посмотреть можно на сайтах: Хабр Карьера, НН, Getmatch, Levels.fyi (на этот ресурс советую обратить внимание в первую очередь)


Заключение:

Найти работу в IT — это не спринт на 1 день, а длинное путешествие. Создайте проекты, прокачайте резюме, готовьтесь к собеседованиям и не бойтесь ошибок. Начните сегодня с одной строчки кода или одного отклика.


Полезные ресурсы по этапам найма: