Самая недооценённая часть пути
Предыдущие два урока готовили тебя к самому собеседованию: портфолио из капстонов — чтобы было что показать, и прохождение собеса — SQL, Python, system design, behavioral. Но есть пробел, на котором спотыкается большинство переходящих в DE: как вообще получить приглашение на собеседование, когда у тебя нет коммерческого опыта и нет ни одного знакомого в индустрии.
Это отдельный навык, и он почти не пересекается с умением писать SQL. Можно идеально решать оконные функции и ни разу не дойти до технического раунда, потому что резюме не проходит первый фильтр или ты откликаешься не туда. Этот урок — про машинерию “до собеседования”: воронку, резюме, LinkedIn, поиск вакансий, нетворкинг, скрининг рекрутера и темп откликов.
Воронка поиска работы: реалистичные ожидания
Поиск работы — это воронка с низкой конверсией на каждом шаге. Понимать её устройство критично, потому что иначе первые двадцать отказов ты примешь как приговор себе, хотя это просто статистика.
Каждый этап отсеивает большую часть кандидатов. Это нормально — поэтому объём откликов имеет значение
достаточно одногоОффер. Один оффер на десятки откликов для джуна — это нормальная конверсия, а не провал. Достаточно одного да на множество нет
Что важно усвоить про эту воронку:
- Конверсия низкая, и это нормально. Для джуна без коммерческого опыта типично отправить десятки откликов ради одного оффера. Это не диагноз твоим навыкам — это устройство рынка, где на каждую junior-вакансию приходят сотни заявок.
- Сроки — недели и месяцы, не дни. От первого отклика до подписанного оффера обычно проходит от нескольких недель до нескольких месяцев. Закладывай этот горизонт и не паникуй на третьей неделе тишины.
- Отказ и игнор (ghosting) — это норма, не вердикт. Большинство откликов не получат ответа вообще. Компания не написала “нет” — она просто не написала. Это не значит, что с тобой что-то не так; это значит, что воронка работает как воронка.
Считай отклики единицами процесса, а не личными отказами. Цель недели — не “получить оффер”, а “отправить N качественных откликов и сделать M касаний по нетворкингу”. Управляй тем, что в твоей власти: объёмом и качеством входа в воронку.
Резюме для смены профессии без опыта в DE
Резюме джуна без коммерческого опыта строится не вокруг мест работы, а вокруг проектов как опыта. Цель — одна страница, которую рекрутер сканирует за 10-15 секунд и понимает: этот человек умеет руками строить пайплайны.
Структура одной страницы
Порядок блоков сверху вниз. Главный блок — PROJECTS, он заменяет отсутствующий опыт работы
капстоны курса, буллеты с метрикамиPROJECTS-as-experience: главный блок. 2-3 закреплённых end-to-end проекта из капстонов курса, каждый с буллетами вида глагол + конкретная метрика. Заменяет отсутствующий work experience
Ключевая идея: блок PROJECTS стоит выше Education и заменяет опыт работы. У тебя нет строчки “Data Engineer в компании X”, но есть end-to-end проекты, собранные из капстонов курса (см. предыдущий урок про портфолио). Они и есть твой опыт.
Буллеты: глагол действия плюс конкретная метрика
Слабый буллет описывает, что ты “делал”. Сильный буллет начинается с глагола действия и заканчивается конкретным числом или результатом. Сравни:
- Слабо: “Работал с данными NYC Taxi, использовал dbt и Airflow.”
- Сильно: “Построил инкрементальную dbt-модель из 15 слоёв с 30+ тестами поверх данных NYC Taxi в DWH.”
Рабочий пример: буллеты из капстона NYC Taxi
Возьмём флагманский капстон (ingestion -> dbt-модель -> тесты -> дашборд -> Airflow DAG) и превратим его в 3-4 резюме-буллета:
NYC Taxi Data Pipeline (Python, BigQuery, dbt, Airflow, Streamlit)
End-to-end ELT pipeline, github.com/username/nyc-taxi-pipeline
- Загрузил месячные Parquet-файлы NYC Taxi в BigQuery + локальный
DuckDB, партиционирование по pickup_date для partition pruning
- Смоделировал данные в dbt: 15+ моделей (staging -> intermediate ->
marts) с 30+ тестами (unique, not_null, accepted_values)
- Оркестрировал ежедневный прогон через Airflow DAG; инкрементальная
обработка по high-watermark вместо full-refresh ради экономии scan
- Собрал Streamlit-дашборд с дневными и недельными метриками поездок
Каждый буллет: глагол действия (Загрузил, Смоделировал, Оркестрировал, Собрал) плюс конкретика (15+ моделей, 30+ тестов, партиционирование, high-watermark). Это читается как опыт, а не как пересказ туториала.
ATS-дружелюбность
Многие компании прогоняют резюме через ATS (Applicant Tracking System) до того, как его увидит человек. Чтобы пройти автоматический фильтр:
- Простое форматирование. Одна колонка, стандартные шрифты, без таблиц, без текстовых полей, без графики и иконок. Хитрая вёрстка в две колонки часто читается ATS как каша.
- Ключевые слова из вакансии (JD). Если в JD написано “Airflow, dbt, SQL, Python, BigQuery” — эти слова должны буквально присутствовать в твоём резюме (если ты их правда знаешь). ATS матчит по строкам.
- Стандартные заголовки секций. Summary, Skills, Projects, Education — не “Мои творения” и “Чем я горжусь”.
- Формат файла. PDF, если в вакансии не просят другое.
Частые ошибки
- Две страницы у джуна без опыта. Должна быть одна.
- Объект-задача “ищу позицию для роста и развития” вместо конкретного summary с ролью и стеком.
- Буллеты без чисел: “работал с большими данными”, “использовал разные инструменты”.
- Отсутствие ссылок на GitHub и закреплённые проекты — рекрутеру нечего открыть.
- Перечисление 30 технологий, половину из которых ты видел один раз. Список skills должен быть честным: тебя спросят по нему на техническом скрининге.
LinkedIn-профиль
Для международного рынка LinkedIn — это второе резюме и главный канал, через который тебя находят рекрутеры. Минимум, который должен быть настроен:
- Headline. Не “Ищу работу”, а конкретно:
Aspiring Data Engineer | Python, SQL, dbt, Airflow | open to junior roles. Headline индексируется в поиске рекрутеров. - About. 3-5 строк: кто ты, откуда переходишь, что построил, какую роль ищешь. Это твоё summary в развёрнутом виде, человеческим языком.
- Featured. Закрепи ссылку на флагманский капстон-репозиторий с превью. Это первое, что увидит зашедший на профиль.
- Open to work. Включи опцию “Open to work” с указанием целевых ролей (Data Engineer, Analytics Engineer) и формата (remote / релокация). Рекрутеры фильтруют по этому флагу.
- Skills и ключевые слова. Добавь навыки (SQL, Python, dbt, Airflow, ETL, Data Warehouse) — по ним работает поиск рекрутеров так же, как ATS по резюме.
Где живут junior DE-вакансии
Откликаться надо туда, где вакансии реально есть, а не только на первый попавшийся агрегатор. Основные каналы:
- LinkedIn Jobs — крупнейший источник для международного рынка, плюс через него работают рефералы (об этом ниже).
- Карьерные страницы компаний. Многие вакансии висят только на сайте компании и не дублируются на агрегаторах. Составь список из 20-30 интересных компаний и проверяй их careers-страницы.
- Агрегаторы. Для международного рынка — Indeed, Otta, Wellfound. Для рынка РФ — hh.ru как основной, плюс профильные Telegram-каналы с DE-вакансиями (их легко найти поиском по “data engineer вакансии” в Telegram).
- Стартап-борды. Wellfound (бывший AngelList), Y Combinator Work at a Startup — стартапы чаще берут джунов и меньше зациклены на формальном опыте.
Как читать вакансию и правило 60 процентов
Описание вакансии (JD) почти всегда содержит больше требований, чем реально нужно. Компании пишут “список мечты”. Если ждать совпадения на 100 процентов — не откликнешься никогда.
Правило: откликайся при совпадении примерно на 60 процентов. Если ты закрываешь большинство ключевых (“must have”) требований и часть “nice to have” — откликайся. Недостающее можно добрать или показать, что ты быстро учишься. Особенно это касается джунов: исследования по найму показывают, что недопредставленные кандидаты склонны не откликаться, пока не совпадут почти идеально, и из-за этого упускают позиции, которые могли бы получить.
Читая JD, раздели требования на три группы: что у тебя точно есть, что есть частично, чего нет совсем. Если первых двух групп в сумме около 60 процентов и больше — это твоя вакансия.
Трекинг откликов в таблице
Когда отправляешь десятки откликов, без учёта ты быстро потеряешь нить: куда подавался, кто ответил, где пора сделать follow-up. Заведи простую таблицу (Google Sheets):
Компания | Роль | Дата отклика | Канал | Статус | Контакт | Следующий шаг | Заметки
---------|------|--------------|-------|--------|---------|---------------|--------
Acme | Jr DE| 2026-05-20 | LinkedIn | Скрининг | recruiter | подготовить SQL | реферал от @ivan
Статусы: Отклик отправлен -> Скрининг -> Технический -> Onsite -> Оффер / Отказ. Таблица убирает хаос и показывает реальную картину твоей воронки.
Нетворкинг с нуля: рефералы — самый результативный канал
Холодные отклики на вакансии — это вход в воронку с самой низкой конверсией. Реферал (рекомендация от сотрудника компании) — самый результативный канал: рекомендованные кандидаты проходят первый фильтр в разы чаще. Проблема в том, что у переходящего в DE нет сети. Хорошая новость — сеть строится с нуля, и это делается осознанно.
Как строить сеть, когда её нет:
- Сообщества. DE-сообщества в Slack / Discord, профильные Telegram-чаты, локальные дата-комьюнити. Не луркай молча — задавай вопросы, отвечай на чужие, будь видимым.
- Онлайн-митапы и конференции. Многие проходят онлайн и бесплатно. После доклада можно написать спикеру осмысленный вопрос — это естественный повод для знакомства.
- Open source. Один разумный PR в инструмент, которым ты пользуешься (dbt-пакет, Airflow-провайдер), — это и навык, и контакт, и строчка, которую видно на GitHub.
- Публичность (learning in public). Пиши про то, что строишь и чему учишься — короткие посты в LinkedIn, заметки на dev.to. Твой флагманский капстон, разобранный в посте, привлекает людей сам.
- Informational interview. Это не просьба о работе, а 15-минутный разговор с человеком из индустрии о его опыте. Люди соглашаются на это куда охотнее, чем на “помоги устроиться”, и именно из таких разговоров вырастают рефералы.
Короткие шаблоны для копипаста
Холодное сообщение работает, если оно короткое, конкретное и не просит слишком многого сразу. Держи 2-4 предложения.
Запрос на коннект в LinkedIn:
Здравствуйте, [Имя]. Я перехожу в Data Engineering и сейчас строю
end-to-end pet-проекты на Python/dbt/Airflow. Подписан на ваши посты
про [тема] — буду рад быть на связи и следить за тем, что вы пишете.
Запрос на informational interview:
Здравствуйте, [Имя]. Я начинающий Data Engineer, изучаю, как люди
реально приходят в профессию. Нашлось бы у вас 15 минут на короткий
звонок, чтобы я расспросил про ваш путь и работу в [компания]?
Я гибок по времени и подстроюсь под вас.
Запрос на реферал (когда контакт уже тёплый):
Привет, [Имя]. Вижу у вас открыта вакансия [роль]. Думаю, мой профиль
неплохо ложится: построил end-to-end pipeline на [стек], ссылка ниже.
Было бы здорово, если бы вы могли зареферить меня или подсказать, к кому
обратиться. Резюме и репозиторий прикладываю.
Не проси реферал в первом же сообщении незнакомому человеку. Сначала коннект и осмысленное взаимодействие, потом informational interview, и только когда контакт стал тёплым — просьба о реферале. Холодный “зарефери меня” от незнакомца обычно игнорируется.
Скрининг рекрутера
Скрининг рекрутера — это короткий звонок на 20-30 минут, первый живой контакт. Рекрутер чаще всего не технический, его задача — отсеять явно неподходящих и понять мотивацию и базовый fit. Типичные вопросы:
- “Расскажите о себе.” — Короткий питч на минуту: кто ты, откуда переходишь, что построил, что ищешь.
- “Почему Data Engineering и почему сейчас?” — Главный вопрос для переходящего. См. ниже.
- “Что вы знаете о нашей компании?” — Покажи, что изучил продукт и стек до звонка.
- “Какие у вас зарплатные ожидания?” — См. метод исследования диапазона ниже.
- “Какой формат ищете, готовы ли к релокации, какой английский?” — Логистика.
Как отвечать на “почему DE и почему сейчас”
Это не про “хорошие зарплаты”. Сильный ответ связывает прошлое с будущим: что в твоей прошлой деятельности тянуло именно к данным, что щёлкнуло, и почему ты не просто интересуешься, а уже строишь (вот капстоны). Структура: “В прошлой роли я делал X и заметил, что меня тянет к Y (данные, автоматизация, пайплайны). Я начал учиться целенаправленно, построил [флагманский проект], и теперь хочу делать это профессионально.” Прошлый опыт здесь — не извинение, а фундамент.
Метод исследования зарплатного диапазона
Не заучивай числа — junior-зарплаты сильно зависят от страны, города, удалёнки и года, и любая конкретная цифра быстро устареет. Вместо этого освой метод, который работает в любой момент:
- Собери актуальные данные по 3-4 источникам сразу: агрегаторы зарплат (Levels.fyi, Glassdoor для международного рынка; для РФ — обзоры зарплат hh.ru и habr career), сами вакансии (часть указывает вилку), и разговоры в сообществах.
- Сузь до своего контекста: junior, конкретный регион/город или remote, конкретный год.
- Получи диапазон, а не точку. На вопрос рекрутера называй вилку с обоснованием: “По моим данным для junior в [регион] это примерно X-Y, ориентируюсь на этот диапазон.”
Если рекрутер давит назвать цифру первым, а ты не уверен — можно вернуть вопрос: “А какой бюджет заложен на эту позицию?” Часто компания назовёт вилку сама. Но прийти на звонок, не сделав домашку по диапазону, — слабая позиция.
Темп откликов и анти-выгорание
Поиск работы может растянуться на месяцы, и главный риск — выгореть на дистанции. Несколько принципов, чтобы дойти до оффера:
- Баланс объёма и таргетинга. Чисто массовые отклики одним резюме на 200 вакансий конвертируют плохо. Точечные, под каждую JD подогнанные отклики — долго, но конвертируют лучше. Здоровый компромисс: одно сильное базовое резюме плюс лёгкая подгонка ключевых слов и summary под каждую вакансию. Не переписывай всё с нуля каждый раз.
- Follow-up. Через 7-10 дней тишины после отклика или скрининга уместно вежливо напомнить о себе одним коротким сообщением. Один follow-up — нормально; три подряд — навязчиво.
- Отказ и ghosting не персональны. Большинство откликов уйдут в тишину. Не перечитывай отказ как вердикт о своей профпригодности — это статистика воронки, а не оценка тебя.
- Устойчивый темп вместо рывков. Лучше стабильно отправлять небольшую пачку качественных откликов каждый день и делать пару касаний по нетворкингу, чем выдать 50 заявок за выходные и потом неделю не подходить к ноутбуку. Поиск работы — это марафон, а не спринт.
Ставь недельные цели по процессу, не по результату: например, N качественных откликов, M сообщений по нетворкингу, K решённых SQL-задач для поддержания формы. Оффер от тебя не зависит напрямую — а вход в воронку зависит полностью.
Попробуй сам
- Собери одностраничное резюме по структуре из урока: Header -> Summary -> Skills (по категориям) -> PROJECTS (как опыт) -> Education -> опц. прошлый опыт. Для блока PROJECTS напиши 3-4 буллета по флагманскому капстону NYC Taxi в формате “глагол действия + конкретная метрика”.
- Найди 3 реальные junior DE / Analytics Engineer вакансии (LinkedIn Jobs / hh.ru / careers-страницы). Для каждой раздели требования на “есть / частично / нет” и оцени совпадение. Откликайся туда, где около 60 процентов и выше.
- Заведи таблицу трекинга откликов с колонками Компания / Роль / Дата / Канал / Статус / Следующий шаг. Внеси туда первые 3 вакансии.
- Настрой LinkedIn: Headline, About, Featured = флагманский репозиторий, Open to work. Отправь один запрос на коннект по шаблону из урока.