Как разработчику найти работу в IT: гайд к вашему первому офферу
- суббота, 5 апреля 2025 г. в 00:00:09
Поиск работы в IT — это как приключение с кучей загадок и испытаний. Ты можешь застрять на этапе «где взять опыт, если без опыта не берут?» или ломать голову, почему резюме снова улетело в мусорку. И я сам, и мои менти прошли этот тернистый путь, начиная с пары корявых сайтов и telegram ботов, которые стыдно было показывать, доходя до офферов, которые казались недосягаемыми. И знаешь что? Это не миф, а вполне реальная цель, если у тебя есть план и немного упорства. В этой статье я поделюсь планом, который помог и мне, и моим менти, добавлю личные истории и инсайты, чтобы ты приблизился к своему офферу.
Senior Python Developer в компании Bureau 1440, ментор.
Мы задали ему много вопросов во время интервью и записали ответы. Ниже — его инсайты об этапах найма и поиска работы в IT разработчиком.
Запомните одно: работодатели в IT не ищут ходячие учебники. Им нужны люди, которые могут взять свои знания и превратить их в реальную пользу: код, который работает, проекты, которые решают задачи, идеи, которые приносят деньги. Теория важна, но без практики она — как машина без бензина.
Когда у вас нет опыта, проекты — это твоё золото. Но не просто программа «Hello, World» на GitHub, а что‑то, что показывает, что вы можете принести пользу. Я сам долго боялся, что мои идеи слишком простые, но потом понял: даже маленький проект может впечатлить, если он решает реальную проблему и хорошо оформлен.
Ищите вдохновение в жизни. Один из первых толковых проектов родился из хаоса: я очень долго искал себе комплектующие для ПК, написал бота‑напоминалку, который парсил информацию с разных сайтов и выдавал Excel‑таблицу с подсвечиванием низких цен. На одном из собеседований мы даже по этому проекту пообщались.
Выбирайте технологии с умом. Хотите в бэкенд? Берите Python (Django/FastAPI), PostgreSQL, Docker. Frontend? React, TypeScript, немного CSS‑фреймворков. Не знаете, что выбрать? Посмотрите вакансии мечты и ориентируйтесь на них. А еще как вариант можно использовать сайт, на котором выложены актуальные требования по вашему направлению.
Делайте красиво. Выложите проект на GitHub, напишите понятный Readme (что это, как запустить, какие есть эндпоинты, зачем нужно твое приложение). Добавьте тесты, даже простые unit‑тесты покажут, что вы серьёзно подходите к делу.
Поддерживайте жизнь в проекте. Добавьте пару фич, обновите зависимости или исправьте баг и отрефакторите проект — это покажет, что вы не из тех, кто бросает начатое.
Не бойтесь простоты. Трекер привычек, парсер погоды кажется слишком простым, но главное, чтобы это работало и выглядело профессионально. Работодатели видят потенциал, а не масштаб.
Кстати, раз уж мы заговорили о проектах и о том, как впечатлить работодателя, у многих джунов и мидлов есть заблуждения о том, что нужно для найма. Давайте разберемся:
«Без идеальных проектов или тонны опыта вас не возьмут.» На деле работодатели ищут тех, кто может принести пользу, а не идеальных кандидатов. Даже простенький проект может зацепить, если он решает задачу и аккуратно оформлен.
«Нужно знать все технологии из вакансии.» Нет, достаточно уверенных базовых знаний и готовности учиться.
«Без опыта в крупной компании шансов нет.» Но опыт в небольших проектах или стартапах тоже ценится, если вы можете показать, что конкретно делали и как это помогло.
«Без диплома с IT‑специальностью дорога закрыта.» А вот и нет — самоучки и выпускники курсов тоже отлично устраиваются.
Резюме — это ваша афиша. Оно должно говорить работодателю: «Я тот, кто вам нужен!». Но делать это элегантно, а не общими фразами вроде «ответственный командный игрок». Можете верить на слово, можете проверить самостоятельно, но резюме с кучей воды не дойдет даже до скрининга с HR.
Структура: Короткий абзац о себе, ключевые навыки, проекты, опыт (даже учебный), образование.
Не забудьте подсветить результаты, а не просто слова. Вместо «участвовал в разработке» — «создал парсер, который ускорил сбор данных на 30%».
Можете адаптировать резюме под вакансию. Если просят React, выделите проекты с React. Если микросервисы — упомяните работу с Docker и FastAPI.
Будьте кратким. Пять страниц резюме, конечно, круто, но читать такое полотно никто не будет.
Добавьте сопроводительное письмо. Не копипасту, а что‑то индивидуальное под компанию.
Представьте, что вы — товар, а резюме — ваша упаковка. Покажите, чем вы полезны, и вас захотят «купить».
Собеседование — это не только проверка знаний, но и ваш шанс показать себя. Я помню своё первое оффлайн интервью с пятью людьми в каморке, сказать, что оно прошло ужасно — это еще ничего не сказать.
Практика всегда будет вашим лучшим другом. Попросите ментора устроить вам мок‑интервью. Вы и сами заметите, что ваши ответы на первом собеседовании и пятом будут сильно отличаться в положительную сторону при должном подходе.
Знайте типичные вопросы:
HR: Почему IT? Что мотивирует? Расскажите о сложной задаче, факапах, достижении, зарплате и пр.
Tech: Основы языка (типы данных, ООП, декораторы, генераторы, асинхронность), фреймворки (роутинг, ORM, паттерны проектирования), базы данных (запросы, индексы, триггеры, разница между JOIN»ами), сети (HTTP‑методы, коды ответов, TCP/UDP, REST), основы ОС (алиасы, SSH, ls, wget, curl).
Используйте метод STAR. На вопросах по типу «Расскажите про самую сложную задачу» отвечайте в стиле: ситуация, задача, действие, результат.
Готовьте свои вопросы. Спросите: «Какие задачи ждут меня в первый месяц?» или «Как вы тестируете код?» — это покажет ваш интерес. А если подготовите более индивидуальные вопросы к компании, то интервьюер добавит еще один плюсик в карму.
На одном собеседовании менти попросили решить алгоритмическую задачу за O(1). Он честно признался, что не видит тут такого решения, предложил за O(n), интервьюер попросил его написать это решение. А после, с небольшими подсказками технического специалиста они пришли к O(1). Этого хватило, чтобы пройти собеседование.
Помните, что собеседование — это диалог, а не допрос. Будьте собой, но подготовленным собой.
Поиск работы — это марафон. У вас может уйти, как один месяц, так и три месяца с десятками отказов, прежде чем вы получите заветный оффер. Главное — не воспринимать «нет» как приговор.
Штурмуйте платформы. LinkedIn, HH.ru, Telegram‑каналы с вакансиями, Хабр.Карьера — отправляйте резюме везде. Если компания достаточно большая, то вы сможете или самостоятельно найти контакт HR, или на их сайте будет раздел «Карьера» для вашего отклика.
Ведите две базы. Первая — вопросы/ответы на популярные вопросы и примеры кода, а вторая — куда откликнулся, на каком этапе находится ваш отклик.
Работайте над ошибками. После каждого интервью думайте: что можно улучшить? Вспоминайте вопросы и старайтесь глубже разобраться в каждом, думайте о том, как это можно применить на работе.
Нетворкинг. Ходите на митапы и конференции, там вы также сможете познакомиться или со своим будущим коллегой, или с рекрутером, который как раз‑таки ищет вас.
Каждый отказ — это урок. Я однажды провалил собеседование из‑за слабого объяснения асинхронности, но потом около недели разбирался в ней, писал код и читал книгу Мэттью Фаулера «Asyncio и конкурентное программирование на Python». На следующем собеседовании по законам подлости меня про нее, конечно, не спросили, но через собеседование история повторилась, и я смог ответить глубже и профессиональнее.
Кстати, пока вы ведете базы и отправляете отклики, рано или поздно столкнетесь с тестовыми заданиями. Давайте разберем, когда стоит соглашаться, а когда лучше отказаться.
Тестовые задания — шанс показать себя, но не все они стоят вашего времени. Соглашайтесь, если хотя бы на 2 пункта ответили «да»:
Задание занимает не больше 4–6 часов. Если больше, то компания готова его оплатить.
Оно связано с реальными или приближенными к реальности задачами, которые вы будете делать в компании.
Вам его дали после скрининга с HR, а лучше после технического интервью.
Вам интересна эта вакансия.
Избегайте общих фраз. Вместо «я работал в команде» укажите конкретные достижения и роли, которые вы выполняли. Например, «Участвовал в разработке проекта X, где отвечал за Y».
Не идите на интервью без подготовки. Даже базовые вопросы вроде «какие типы данных есть в Python?» могут завалить неподготовленного человека.
Не сдавайтесь после нескольких отказов. Это нормально — получить 20 «нет», прежде чем будет 1 «да». Нормальной я считаю конверсию откликов/приглашений на скрининги 5–10%, если у вас околонулевой процент — проблема в резюме, если вас после всех скринингов не зовут на технические этапы — проблема в soft‑скиллах, если после технических не дают оффер — проблема в ваших hard‑скиллах.
Не забывайте о форматировании. Чёткое и удобное оформление резюме поможет рекрутерам быстро найти нужную информацию и позвать вас на скрининг.
Зарплаты в IT зависят от региона, компании, технологий и вашего опыта. Но вот примерные ориентиры по моему мнению:
Intern — от 0 до 80к
Junior — от 80 до 150к
Middle — от 150 до 300к
Senior — от 300 до 500к
Также посмотреть можно на сайтах: Хабр Карьера, НН, Getmatch, Levels.fyi (на этот ресурс советую обратить внимание в первую очередь)
Найти работу в IT — это не спринт на 1 день, а длинное путешествие. Создайте проекты, прокачайте резюме, готовьтесь к собеседованиям и не бойтесь ошибок. Начните сегодня с одной строчки кода или одного отклика.
План поиска работы — в одной таблице
Что внутри?
— Пошаговая инструкция, как заполнить таблицу
— Профиль кандидата: формируем ваши сильные стороны
— Пирамида компаний: разделяем целевые компании по приоритету
— Каналы поиска: LinkedIn, hh.ru (http://hh.ru/) и другие источники
— Скиллы и самопрезентация: определите свои ключевые компетенции и учитесь представлять себя
— План и трекинг: следите за вашими действиями и результатами
— Воронка откликов: оценивайте конверсию на каждом этапе, чтобы понять, где возникает проблема