Жизнь после курсов по программированию: что я понял спустя 3 месяца поисков работы

В погоне за высокими зарплатами все больше людей по всему миру записываются на курсы по программированию. Интернет наполнили вдохновляющие рассказы свичеров о том, как они упорно учились и в итоге получили работу мечты. Но путь, который они прошли от выпуска до трудоустройства, обычно остается за кадром. Феликс Фенг решил поправить ситуацию и изложил свой опыт в колонке на Medium. Поиск первой работы занял у него три месяца. Возможно, благодаря урокам, которыми он делится, у вас получится устроиться быстрее.

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

Я закончил Hack Reactor в июле 2016 года и на получение своего первого оффера от Radius Intelligence у меня ушло три месяца. Я подал свою кандидатуру в 291 компанию, прошел 32 телефонных интервью, 16 технических собеседований, 13 кодинг-собеседований, 11 личных интервью и получил 8 офферов.

Менее 3% соискателей получают оффер

Мне предлагали зарплаты от $60 000 до $125 000 год в компаниях по всей Америке как на должность front-end-разработчика, так и на full stack. В целом, 2,8% всех моих посяганий на место увенчались успехом.

За это время я узнал на личном опыте пять нюансов, которые могли бы существенно упростить и ускорить процесс.

Обращайтесь к реальным людям

Поначалу я пытался устроиться на работу методом выстрела. Я подавался через Indeed.com, AngelList, LinkedIn, StackOverflow, Hacker News, сайты компаний и даже через Craigslist. Я претендовал на любую позицию, на которой требовали опыт в React, Node или JavaScript. В первую неделю я рассылал резюме в 15-20 компаний в день. К слову, вот репозиторий со списком IT-компаний, в которые несложно подать заявку на трудоустройство.

Результат был более чем скромный. Менее пяти процентов компаний мне отвечали. Я просто метал резюме в пустоту.

Все изменилось, когда один из моих знакомых экс-рекрутеров поделился со мной лайфхаком. Он сказал, что лучше отправлять письмо напрямую конкретным людям по каждой вакансии. Кому угодно, пока не придет ответ. С тех пор каждую компанию я пробивал по LinkedIn и писал кому-то из рекрутинговой команды.

В большинстве небольших компаний и у большинства менеджеров среднего звена формат email как правило укладывается в шаблон имя@компаниямечты.com. В больших компаниях — имя.фамилия@компаниямечты.com. Чтобы убедиться, что адрес правильный, я использовал Rapportive, в котором можно осуществить кросс-чекинг почты с существующими социальными аккаунтами.

Результаты превысили ожидания. Я послал более 150 писем и на 22% из них получил ответ. Также было приятно общаться с настоящими людьми. На удивление, иногда мне отвечали СЕО и СТО компаний и даже проводили собеседование лично.

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

Начинайте с малого и продвигайтесь вперед

Вы столкнетесь с низкоуровневыми собеседованиями (как правило, это нетехнологические компании, которым нужен какой-нибудь разработчик), где вам будут задавать тривиальные вопросы по JavaScript. Вы столкнетесь и с высокоуровневыми собеседованиями (уровня Google/Facebook), где задают сложные и вопросы по структурам данных и алгоритмам.

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

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

Прослеживается прямая зависимость размера зарплаты от времени, затраченного на интервью

Постепенно вопросы становились каверзнее, а зарплаты выше. И в конце концов я нашел работу, которая мне подошла.

Вывод: начинайте с более легких собеседований, а сложные оставьте напоследок.

Учитесь так, будто от этого зависит ваша будущая работа (потому что так и есть)

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

Закончив Hack Reactor, я точно знал свои слабые стороны — структуры данных и алгоритмы. В исследовании Triplebyte говорится, что студенты курсов, как правило, слабее усваивают эти разделы, чем студенты вузов. Чтобы заполнить пробелы, я учился и практиковался каждый день.

Дни напролет я корпел над сортировочными алгоритмами. В другие дни я изучал принципы работы интернета. Я не полностью понимал суть, поэтому целый день смотрел видео на YouTube или копался в StackOverflow, пока не врубился.

Если у вас на носу интервью, и вы не чувствуете себя достаточно подкованными, вот список материалов, которые лично мне очень помогли:

  • InterviewCake: мой любимый ресурс про структуры данных и алгоритмы. В нем решения разбиты на пошаговые разделы — отличная альтернатива Cracking the Code Interview (CTCI). Единственный недостаток — у них маловато задач.
  • HiredInTech’s System Design Section: отличное руководство по вопросам о системном дизайне.
  • Coderust: если CTCI вам вообще не заходит, то Coderust 2.0 может понравится. За $49 вы получите решения практически на любых языках программирования с интерактивными диаграммами.
  • Как подготовиться к техническому собеседованию на Reddit: Здесь я постоянно проверял, насколько готов к очередному собеседованию.
  • Front End Interview Questions: Изматывающий список вопросов по front-end.
  • Leetcode: Источник вопросов по алгоритмам и структурам данных. Фильтровать их можно по компаниям, например, можно вывести список вопросов, которые часто задают в Uber или Google.

Вывод: Подготовки не бывает много.

Лучшее — вперед

Тяжело прорваться в эту индустрию. Нужно хорошо справляться, даже если ваша подготовка неидеальна. Чтобы преуспеть, нужно самому себе стать адвокатом.

Продавайте себя

В Hack Reactor мы учились маскировать отсутствие опыта. Для своего же блага, мы не афишируем тот факт, что проходили курсы. Почему? Потому что компании сразу запишут нас в джуниоров или навесят ярлык «недостаток опыта».

На интервью с одним стартапом все пошло на юг, как только стало понятно, что я выпускник курсов. В другой компании из-за этого мне предложили $60 000 в год, потому что младшим разработчикам больше не положено.

На самом деле вам нужно убедить работодателя в том, что вы можете выполнять порученную вам работу. В то же время, неплохо бы убедить в этом себя.

Вы можете. Сконцентрируйтесь на вашей любви к программированию. На том, что вы уже построили на React и Node. На демонстрации своих глубоких познаний в JavaScript и других языках, которые вы изучали. Только после этого они могут определить степень вашей компетентности.

Это двусторонний диалог

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

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

В ходе собеседования обязательно задайте такие вопросы:

  • С какими техническими проблемы вы сталкивались за последнее время?
  • Что лично вам нравится в работе на эту компанию?
  • Как структурированы команды и как обычно распределяют задачи?

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

Вывод: Не спешите себя продать задешево! И помните, это взаимное ознакомление.

Это марафон, а не спринт

Данный путь непрост во всех смыслах. В течение трех месяцев я вкалывал по шесть дней в неделю. Но и заботиться о себе не забывал.

Так мог бы выглядеть мой типичный день на JavaScript

Иногда я учился вместе с друзьями. Иногда в одиночестве — сидя с ноутбуком в кафе. Или тусовался с другими выпускниками Hack Reactor. И каждую неделю встречался с нашим карьерным консультантом, чтобы обсудить мой прогресс.

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

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

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

Майя Ярова: Редактор, журналист. Работаю в AIN.UA с 2012 года. Пишу о стартапах, инвестициях, продуктовых и аутсорсинговых IT-компаниях. Связаться можно в Facebook и по e-mail: Для связи: Почта | LinkedIn | Facebook