История программиста в Кремниевой Долине. 6 интервью и 6 офферов всего за 6 дней

История программиста в Кремниевой Долине. 6 интервью и 6 офферов всего за 6 дней

UniLecs
История iOS-разработчика, который удачно прошел 6 интервью в лучшие IT-компании Кремниевой долины, получил 6 офферов и потратил на это 6 дней.

В течение 6 дней с 13 по 20 августа 2018 года я проходил интервью в LinkedIn, Yelp, Apple, Amazon, Facebook и Google и в итоге получил офферы от каждой из этих компаний.

У меня не было никакого желания летать по всей Америке в поисках идеальной работы, поэтому я запланировал все эти интервью примерно в одно время и в одном месте.

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

Кто я такой, и немного статистики

Я точно знал, что хочу получить работу в Кремниевой Долине, где мог бы профессионально развиваться и иметь перспективы, работая в крупной компании. До того момента я работал в стартапе, и мне действительно это нравилось, но по некоторым причинам я искал “рыбу” покрупнее (конечно, в плане пользы, а не размера команды). Также я плохо представлял, где именно хочу работать, и не знал, как оценить себя с точки зрения стоимости моих услуг на рынке. Но я был уверен, что не хочу отправлять свое резюме в сотню компаний, как я это делал тогда, когда только выпустился из колледжа.

В общем, я решил подать резюме в 20 компаний. Его отклонили в 4-х из них (Reddit, Nest, Stripe, Uber) сразу же после подачи. Осталось 16, от 10 из них я так и не дождался ответа. Из 6-ти оставшихся компаний мне написали рекрутеры, с этими же шестью компаниями у меня было интервью по телефону и вживую. В конечном итоге, я получил оффер от всех 6-ти компаний.

Просматривая свой календарь, я полагаю, у меня было (примерно):

  • 7 собеседований с рекрутерами в течении 10 дней;
  • 7 технических собеседований в течении 11 дней;
  • 29 собеседований вживую в течении 8 дней;
  • 3 собеседования по телефону.

Итак, у меня было 46 собеседований в течение 73 дней (в том числе время ожидания между этапами). Это было очень утомительно, ведь даже мой обеденный перерыв на основной работе я вынужден был тратить на интервью. Поскольку я рано приходил на работу, я мог уходить с работы пораньше, чтобы принимать звонки дома. Однако выполнять все обязательства по основной работе оказалось непросто, но я постарался расставить приоритеты и кое-что переносить по необходимости.

Список компаний

LinkedIn (Sunnyvale, CA)

Мобильные приложения LinkedIn я считаю довольно качественными. На мой взгляд, они внесли серьезный вклад в сообщество open source. Меня очень впечатлило интервью в этой компании как с точки зрения инженерии, так и с культурной стороны. LinkedIn поднялся на первое место в моем личном списке iOS Prestige ™.

Yelp (San Francisco, CA)

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

Apple (Cupertino, CA)

Я рос абсолютным фанатом Apple (по крайней мере, лет с 12), и именно Mac изначально вовлек меня в программирование. Iphone SDK, в свою очередь, вдохновил меня на разработку собственного приложения. И то, что Apple пригласили меня на интервью, а после предложили работу, стало невероятным сюрпризом. Не знаю, что еще сказать по этому поводу.

Amazon (Palo Alto, CA)

Я никогда не рассматривал Amazon как компанию “номер один” в мире разработки мобильных приложений. Хотя позиция и команда вполне соответствовали моим критериям поиска. Я не был впечатлен зданием Пало-Альто, в котором мне довелось побывать. Но стоит сказать, что это был их временный офис, и в будущем они должны были переехать в более современное здание Amazon. Люди, с которыми я разговаривал, показались мне довольно преданными своему продукту. На самом деле, каждая компания любит говорить нечто вроде: “Работа здесь больше похожа на работу в стартапе”, но вот в Амазон я почувствовал реальное подтверждение этому, как нигде больше.

Facebook (Menlo Park, CA)

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

Google (Mountain View, CA)

Насколько я понял, Google проводит “общие” интервью для моей позиции. Я разговаривал со многими участниками одного из крупнейших продуктов Google для iOS, но я не собеседовался специально для этой команды. После того, как я прошел через комитет по найму Google, я перешел к этапу согласования команд, и в конечном итоге сошелся со своей командой. Это очень долгий процесс в сравнении с остальными компаниями, с которыми мне довелось иметь дело.

План подготовки

Внесу больше конкретики: я начинал с уровня, когда я, вероятно, мог бы решить большинство задач Leetcode Easy за ~ 30 минут, и 25% задач Leetcode Medium за бесконечное время. Решение задач уровня Leetcode Hard было сродни попыткам решить P = NP. Короче говоря, у меня были большие пробелы.

Изучать алгоритмы я начал с книги “Карьера программиста” (“Cracking the Coding Interview” - 2016). Я просыпался утром в воскресенье, шел в ближайшую кофейню и решал несколько задачек на Objective-C. Как только я решил достаточно задач из книги “Карьера программиста”, я начал рассматривать задачи Leetcode в главах, которые раньше не открывал. Спустя несколько недель я почувствовал, что у меня есть необходимая база, и перешел к следующему уровню.

После основ я перешел к книге “Элементы технического интервью”. Эта книга предлагала план обучения, которого я жестко придерживался. Крайне важно, по моему мнению, решать задачки на доске или по телефону с кем-то. Я уверен, что можно получить оффер и без этого, но в моем случае, это была лучшая форма практики. Поначалу вы будете чувствовать неловкость, так в том-то и дело. Если бы это было естественно, вам бы не пришлось практиковаться, не правда ли? Если вы будете практиковать собеседование по телефону или у доски, то будете чувствовать стеснение и неуверенность, но это значит, что вы делаете именно то, что должны - тренируетесь. Для меня это было очень неловко, но практика полностью окупилась.

После месяца постоянных тренировок с ежедневными решениями задачек (примерно, 2-3 часа в день, чаще по выходным), я перешел к разделу “Лучшие технические вопросы” на Leetcode. Я не рассмотрел их все, но решил достаточно. Одним из ключиков к подготовке к техническому интервью является тот факт, что вы можете выяснить проблему во время самого интервью, поэтому не обязательно знать, как решить каждую задачку или проблему, так как это невозможно. И кстати, почти все вопросы, которые я слышал за неделю своих собеседований, оказались “новыми” для меня, но были очень похожи на те вопросы, которые я видел и рассматривал.

Что необходимо выучить

Я попытаюсь расписать в виде пунктов все шаги по подготовке к интервью, которые были мной пройдены. Все, что я перечисляю, - это то, к чему я хотел бы быть подготовлен заранее как с точки зрения технических моментов, так и с точки зрения планирования и не технической части. Эти пункты достаточно обобщенные и, в целом, они применимы ко всем в нашей IT-отрасли. Я имею в виду, не только iOS.

📚 Не бросайте и продолжайте учиться во что бы то ни стало. Когда я искал работу после колледжа, я сдался после одной или двух недель обучения. Тогда я это объяснял тем, что просто не готов учиться. Тогда был минимальный прогресс при обучении неделями, и я подумал, зачем тратить так много времени впустую. В этот же раз я решил, что у меня нет выбора. И со временем все встало на свои места. Это очень большая работа, но готовность учиться - вот что отличает успешных кандидатов от остальных.

🤓 Практика - наше все! Безусловно, врожденные способности необходимы, но практика (то есть обучение) может заполнить любые пробелы в этих способностях. Компании не нанимают людей, основываясь на наличии или отсутствии врожденного таланта. Они приглашают работать тех, кто хорошо выполняет свои профессиональные обязанности. Они нанимают тех, кто может выполнять свои обязанности и делать это хорошо, независимо от того, где и когда они получили эти знания и способности.

👫 Практикуйтесь с друзьями. Будь то простая доска или такие сервисы, как Codeshare. Имитация реального собеседования с кем-то в течении определенного времени избавляет от страха реальных собеседований. Благодаря такой практике вы сможете преодолеть стеснительность, перестанете чувствовать себя зажато. Идеально, если ваш друг понимает задачу, проблему и сможет подсказать в случае чего, тем самым подтолкнув вас к правильному решению. Серьезно, подобная практика бесценна!

📊 Это дело случая! Вы можете эффективно практиковаться, но при этом не получить работу только потому, что нужный человек в нужное время просто не увидел ваше резюме или вы просто не пришли к решению задачи на за отведенное время. Лучшее, что вы можете сделать, - максимизировать свои шансы. Это означает, что вы должны подавать документы везде, где бы хотели работать, и соответствовать требованиям. Я отправлял свое резюме в мой ТОП-20 лучших компаний.

🤔 Сосредоточьтесь на решении проблем, а не на реализации. Зубрежки недостаточно. Из примерно 20-ти задач, которые встречались мне за неделю реальных собеседований, я видел, возможно, одну из этих задач ранее (кстати, я сказал об этом своему интервьюеру, хотя многие бы не сделали так). Я просто видел много общих шаблонов решения задач, и поэтому смог решить задачу на лету.

😣 Не расстраивайтесь, если что-то идет не так! Я вспоминаю несколько собеседований, когда я не мог найти решение, и интервьюеры подталкивали меня к нему. И я все равно получил офферы. Кроме того, я чувствовал, что абсолютно провалил одно из моих интервью, но позже компания все равно сделала мне предложение. Так что, очевидно, все может получиться.

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

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

🧠 Если вы знаете больше, покажите это. В ходе многочисленных интервью, отвечая на какой-либо вопрос, я демонстрировал и некоторые другие свои знания. Отвечаете на вопрос о строках? Покажите знание Unicode или объясните, как поддерживать Unicode. Реализуете приватный метод? Расскажите о соглашениях для методов в Objective C. Попалось обновление табличного представления? Расскажите о различных анимациях. Не поднимайте тему, если не уверены в своих знаниях по ней, но если уверены, покажите свои навыки за пределами узкого вопроса, тем самым вы сможете обойти любого, кто строго придерживается избитой дорожки.

💪 Постарайтесь установить свою планку. Эффективность интервью зависит не только от того, получите ли вы в итоге оффер от компании или нет, на эффективность также влияет то, какие условия вы получите в итоге. Достижение того рубежа, когда вы уверены, что знаете достаточно, чтобы получить оффер, это здорово. Но имейте в виду, что между «достаточно хорошим предложением» и «абсолютно хорошим предложением» существует большая разница. Стремитесь к последнему! Мои первоначальные (т.е. обсуждаемые) офферы были весьма солидными, несмотря на мой относительный недостаток опыта, и я считаю, что эффективность интервью сыграла большую роль.

Краткое заключение

Ну вот и все! Это была сумасшедшая поездка, и я ни о чем не жалею. Я искренне надеюсь, что вышеизложенное сможет помочь кому-то преодолеть страх, когда дело касается работы мечты. Желаю вам её получить!

Оригинал статьи на английском языке

Report Page