Как я проходил собеседование в Кремниевой долине

Гайд по собеседованиям в крупнейшие американские ИТ-компании

Поговорили с Иваном Богатым, специалистом в области информационных технологий, и спросили про опыт прохождения отбора в Google, Facebook, Microsoft и другие известные американские IT-компании. Как строить карьерно-американскую мечту? Рассказываем в статье.

Иван Богатый — аналитик в инвестиционной фирме Dragonfly Capital, фокусирующейся на проектах в области блокчейн. Работал в Google Research и разработал успешный стейбл коин проекта для американской криптобиржи.

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

Путь к собеседованиям в Кремниевой долине

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

После нескольких месяцев подготовки, долгих дней интервью (которые, к слову, оказались гораздо более увлекательными, чем напряженными) и ночей в роскошных корпоративных отелях, у меня появились предложения от Google и Facebook (у Microsoft, к сожалению, в то время был заморозка найма), а также, случайно, от одного из ведущих хедж-фондов Нью-Йорка, занимающегося алгоритмическим трейдингом.

Подготовка к интервью

Главное, что я понял из этого процесса — в отличие от олимпиадных или научных занятий, где для победы часто нужно волшебное «просветление», успешное прохождение интервью даже в самых престижных компаниях не требует магии. Есть стандартные шаги, которые нужно выполнить (примерно как тренироваться для решения задач по ЕГЭ), и стандартные ошибки, которые нужно избежать. Именно об этом будет эта статья.

Она основана на моих впечатлениях от интервью в Google, Facebook, нескольких алгоритмических хедж-фондах в Лондоне и Нью-Йорке, а также в Яндексе и Microsoft Research (моих двух предыдущих опытах). местами работы). Многое подсказывали друзья и знакомые, пройдя тот же процесс.

Процесс набора персонала в большинстве известных компаний один и тот же:

  • Сначала вы отправляете свое резюме.
  • Если оно вызывает интерес, вас приглашают на телефонное интервью, которое длится около 40 минут.
  • На этом интервью вы решаете задачи и пишете код.

Тем, кто прошел первый этап, предлагается пять личных интервью продолжительностью около часа каждое (обычно нет проблем с тем, чтобы привезти понравившегося кандидата в главный офис), на каждом из которых вам дается задачи и задаются вопросы о каком-либо проекте из вашего резюме. По времени: примерно 40 минут на задачи, 15 минут на вопросы по резюме и около пяти минут на ваши вопросы.

Резюме — как привлечь внимание крупных ИТ-компаний

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

Вместо этого нужно найти знакомых в компании, где вы хотите работать, и отправить резюме рекрутерам через них («internal referral»). Есть такие друзья? Замечательно. Нет? Следует обратиться к друзьям ваших друзей и так далее. При этом не стоит слишком сильно стесняться просить о рекомендации. Если человек вас знает хотя бы немного, у него будет своя мотивация помочь вам: работать с кем-то знакомым — это весело, да и вознаграждение за рекомендацию, которое выдают за успешных кандидатов, вряд ли кому-то помешает.

На Quora появляются советы знакомиться с сотрудниками нужной организации, на LinkedIn могут быть привлечены для рекомендации вас. Лично я не практиковал такой подход, но некоторым более экстравертным друзьям это удавалось успешно. Даже нейтрально-положительная отзыв может значительно повысить вероятность прохождения собеседования, что является главной целью.

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

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

Как подготовиться к собеседованию?

Лучшим источником задач для подготовки является книга «Cracking the Coding Interview» автора Гейл Лакманн Макдауэлл (можно найти предпоследнее издание в интернете, хотя рекомендуется приобрести последнюю версию). Автор имеет опыт работы в нескольких крупных компаниях, таких как Google, Microsoft и Apple, и провела множество собеседований. Книга содержит широкий спектр задач и советов по их решению, которые помогут вам подготовиться к собеседованию. Удобно, что задачи разделены по темам, охватывающим все типы задач, с которыми я сталкивался. К каждой есть решение.

6 издание «Cracking the Coding Interview»

Начальная подготовка у всех разная, но на собеседовании нужно уметь решать все задачи. Лично мне (как и многим олимпиадникам) все алгоритмические задачи казались тривиальными, но было полезно ознакомиться со стандартными решениями в области проектирования систем и масштабируемости.

Возможно, у кого-то будут противоположные трудности. Рекомендую не лениться и прорешать книгу от начала до конца. Один знакомый, которому я дал этот совет, возразил, что ему жаль тратить на такую ерунду неделю своей жизни. Из моего опыта могу сказать, что разница между хорошей работой в качественной команде и средненьким проектом может составлять годы жизни. Более прагматичный подход —парень мог бы получить предложение с зарплатой на 5–10 тысяч долларов больше, если бы не совершал ошибок на собеседовании.

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

На том же сайте можно пройти тестовое интервью за $150 и получить подробную обратную связь. Я считаю, что это отличная инвестиция. Более простой вариант — начать собеседования с компаний, которые вам менее важны, чтобы потренироваться. «Первый блин комом», и тренировка очень важна, особенно если у вас нет опыта собеседований вообще.

Если этого будет недостаточно, есть еще geeksforgeeks.org (там хорошие задачи, но Люди часто публикуют неточные решения, необходимо быть осторожными в их доверии). Очень рекомендую также topcoder.com/tc и codeforces.com (на этих веб-сайтах нужно разобраться, как отправлять свои решения в систему, зато потом оценка правильности/неправильности дается автоматически).

Codeforces - это веб-сайт, на котором проводятся соревнования по соревновательному программированию.

Также есть projecteuler.net — этот веб-сайт мне порекомендовал для практики рекрутер из Google, но там скорее математические задачи, которые встречаются на собеседованиях значительно реже. Насколько серьезно стоит готовиться? Думаю, выделение пары месяцев на подготовку — не преувеличение. Иначе в запасе будет как минимум год до следующей попытки.

Переговоры и заключение контракта

Вот мы и подошли к самой интересной части. Зарплаты талантливых программистов в Силиконовой Долине начинаются от $100 тысяч в год (сразу после университета), и разница в заработной плате людей с примерно одинаковыми навыками может достигать $10-20 тысяч в год в зависимости от различных случайных обстоятельств.

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

В связи с этой спецификой большая часть советов, которые можно найти о переговорах в интернете — полная ерунда. Например, один из самых распространенных советов в статьях о переговорах о заработной плате — не называть сумму первым (пример). В нашем случае это самая грубая ошибка, которую можно совершить (для более подробного объяснения рекомендую прочитать этот ответ на Quora от бывшего рекрутера Google).

У ИТ-компаний в Долине есть стандартная шкала «технических уровней», по которой классифицируют инженеров, с соответствующими диапазонами зарплат. Этот механизм позволяет компаниям не платить больше, чем нужно, а также не разжигать конкуренцию за сотрудников между компаниями (некоторые из этих методов, кстати, расследовались антимонопольными органами США). Короче говоря, вероятность приятного сюрприза довольно мала. Если молчать, гораздо вероятнее получить предложение на уровне или немного ниже ожиданий, и исправлять это после факта будет сложнее.

Какую стратегию выбрать?

Во-первых, насколько возможно точно определить сумму ожидаемого предложения исходя из ваших навыков (Glassdoor и слухи в помощь).

Во-вторых, просить немного больше. Например, почти всем выпускникам вузов без опыта работы Google предлагает одну и ту же сумму, пусть это будет X. Если на вопрос рекрутера: «Сколько вы ожидаете получать?», многозначительно промолчать, то ровно X вам и предложат. Но если вы отлично прошли собеседование и считаете, что выделяетесь Даже среди тех, кого принимают в Google — можно заранее попросить 1,05Х, и шансы гораздо выше. По неизвестным причинам увеличить количество акций значительно проще, чем базовую заработную плату, поэтому если нет разницы — начинайте с этого.

Но, в общем, единственная реально работающая точка опоры — предложения от других компаний. BATNA, все дела. В таких случаях уже вполне реальны скачки X→1,2X и больше. Для русского менталитета такой «аукцион» может показаться недопустимым или по крайней мере скользким поведением, однако в США это норма и обижаться на вас не будут. Более того, рекрутеры обычно напрямую спрашивают, какие еще компании вы рассматриваете, и сколько они вам предлагают. И если никто больше вас не зовет, хороший ли это признак? Шутки ради добавлю, что дейтинг в Америке работает примерно так же.

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

Краткий итог

  • Отправляем резюме рекомендацией через знакомых.
  • Решаем задачи из книги «Cracking the Coding Interview».
  • Проходим собеседования в несколько компаний одновременно, даже если хотим в одну.
  • Важно обсуждать точную сумму оплаты труда. Мы не испытываем страха при обсуждении финансовых вопросов.





Подборки стажировок

  • Удаленные стажировки
  • Вакансии в ВК
  • Стажировки для junior
  • Стажировки в банках