Как получить работу в Uber, Google, Facebook и других компаниях

Советы касательно процесса, подготовки, книг для прочтения, алгоритмов и того, как пройти собеседование.

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

Общая подготовка

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

Culture video of Google NYC. Посмотрите это видео, и вы не будете чувствовать себя ошеломлённым при первом визите. Если у вас есть друзья или приятели, работающие в Google, не поленитесь посетить их на рабочем месте. Такие визиты бесценны, так как позволяют лучше оценить культуру компании без какого-либо давления, в качестве «туриста». Также можете посмотреть художественный фильм «Кадры».

Expectations for Facebook managers. Набор общих мудростей, которыми руководствуются и в Google . Интересная цитата: «… менеджеры по найму должны уметь писать код». Другими словами, менеджеры по подбору персонала в компании Google являются техническими специалистами.

Navigating the Interview Process at Uber and Beyond. Объяснение процесса найма в Uber: как подготовиться и чего ожидать. Конкретный совет, упомянутый в этой статье, заключается в создании самопрезентации.

How we hire. Этот сайт описывает официальный процесс найма Google и помогает избежать любых неожиданностей. Как только вы начнёте общаться с рекрутером Google, он или она заново объяснят все детали. Но лучше не полагаться полностью на одного конкретного рекрутера, а понимать сам процесс.

Get that job at Google. Знаменитый, обязательный к прочтению блог Стива Джегге (Steve Jegge), бывшего гуглера, с полезными советами по подготовке к собеседованию, а также с тем, как справиться с возможным отказом: «мы иногда отказываем квалифицированным людям, потому что это считается лучше, чем иногда нанимать неквалифицированных людей».

chrislaffra.com. Это сайт, который содержит ссылку на PyAlgoViz, набор из ~ 50 алгоритмов и визуализаций по компьютерным наукам, которые Крис Лаффра (Chris Laffra) разработал при подготовке своих собственных собеседований с Google. PyAlgoViz кажется немного излишним, и необязательно создавать что-то в таких масштабах, но помните, что на подобную работу, можно ссылаться в своих собеседованиях.

Минимальный список книг

Сегодня можно найти множество хороших книг, посвящённых подготовке к собеседованию на техническую должность. Если же ваше время ограничено, настоятельно рекомендуем прочесть следующие три:

The Algorithm Design Manual. Тщательное, достоверное освещение всех возможных алгоритмов, с которыми вы можете столкнуться во время собеседования. Также обсуждается сложность, динамическое программирование, нотация O-большое, а также обсуждается то, какой алгоритм следует выбрать под конкретную проблему. Эта книга считается «Библией» многими инженерами в Google.

Influence — The Psychology of Persuasion. Отличный набор уроков, которые не преподавали во время учёбы. Книга описывает, как быстро найти общий язык с незнакомцем, преодолеть неловкость и добиться искренности от людей. Во время собеседования у вас есть около 3 секунд, чтобы произвести первое впечатление. Эта книга помогает подготовиться к этой части собеседования. Особенно полезно для ботаников.

ACE The Programming Interview. Список из 160 вопросов, которые могут быть заданы на технических собеседованиях. Не ожидайте, что что-то из этого на самом деле спросят в Google, так как все они уже давно в чёрном списке. Однако методический подход, описанный в книге, поможет вам попрактиковаться и быстро понять, куда вас ведёт интервьюер, задавая конкретный вопрос.

Вкратце о техническом найме

Все мы уникальны, и никто не приходит в такие места, как Google, Facebook или Uber по проторенной дороге. Тем не менее, существует общая последовательность событий, которые приблизят вас к работе вашей мечты:

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

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

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

Телефонное интервью будет включать различные темы. Обычно они осуществляются с помощью видеозвонков и совместно используемого документа: интервьюер может попросить написать for цикл, к примеру, для подсчётов символов в строке. Интервьюер уже провёл множество личных собеседований и сможет справиться с этим заданием посредством телефона. Смысл такого собеседования в том, чтобы понять, стоит ли компании посадить вас в самолёт и пригласить в свой офис для проведения собеседование на месте.

Итак, собеседование на месте. Обычно их 5 или 6, каждое из которых сфокусировано на конкретной теме. Настраивайтесь на собеседование по кодированию и алгоритмам, проектированию систем и архитектуре с изменяемым процессом, а также по лидерству и менеджменту. Кроме того, обязательно будет ещё одно собеседование в неформальной обстановке – за ланчем. Кодирование и дизайн часто связаны с интерактивной панелью, так что будьте к этому готовы.

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

Host matching. Это необязательный шаг и зависит от компании. Например, в Google комитет по найму собирается и решает, что вы набрали достаточно высокий балл по собеседованиям, после чего начинается проверка на совпадение с командой хостинга. После этого у менеджеров по найму в Google появится возможность подобрать вам вакансию в своей команде. Обычно это происходит быстро. В некоторых случаях проверка на совпадение проводится не так быстро, даже если вы уже прошли собеседование. Ваш рекрутер может помочь. Другие контакты в Google также могут помочь. В Uber вы, как правило, проходите собеседования непосредственно с командой, которая хочет нанять вас, поэтому нет необходимости в процессе согласования с хостом, хотя это всё ещё может происходить за кулисами. В Facebook host matching происходит после того, как вы будете наняты. Таким образом, процесс немного отличается на этом этапе в зависимости от того, где вы проходите собеседование.

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

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

Вы принимаете предложение и присоединяетесь к компании. Первые недели в новой компании обычно посвящаются адаптации, на одной из крупных площадок, вместе с другими новыми сотрудниками. Это потрясающий опыт. Неделя «проф-ориентировки» – ключ к началу работы в новой компании, и вы должны не торопиться, чтобы получить максимальную отдачу от этой практики.

Процесс может показаться сложным. Просто поймите, что идеальных собеседований не бывает. Такие крупные компании, как Google, Uber, Facebook, Apple и т. д., вынуждены внедрять стандартизированный процесс, чтобы справиться с объемом. Иногда этот процесс может показаться кандидату ужасно неэффективным. Тем не менее, у компаний есть для этого веские причины: они хотят избежать бессмысленной траты времени и любых недоразумений в процессе найма.

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

Общие советы по собеседованиям

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

  • Произведите хорошее первое впечатление на каждого интервьюера. Представьтесь. Улыбка. Некоторые придут чуть позднее. Большинство не будет знать, кто ты. Некоторые изучат ваше резюме. Предположим, они ничего не знают о вас, поэтому попрактикуйтесь в своей 30-секундной речью в лифте. Улыбка. Не показывать никакого раздражения. Улыбка.
  • Как действо действительно начнётся, постарайтесь превратить собеседование в дискуссию. Не стоит просто отвечать на вопросы. Задавайте свои вопросы. Объясните то, с чем вы сталкивались в прошлом, и найдите параллели с текущей проблемой.
  • Не рассматривайте собеседование как тест. Действуйте так, как будто вы уже коллеги с интервьюером, и вы вместе решаете проблему.
  • Проведите интеллектуальную беседу с интервьюером. Бросьте им вежливый вызов. Если можете, научите их чему-нибудь. Удивите их новой идеей.
  • Осознайте и признайте то, чего вы не знаете, и направьте интервью в ту сторону, где вы сможете показать свой профессионализм и навыки.
  • Думайте вслух. Скажите, что вы думаете о проблеме. Сначала это кажется странным, но это действительно помогает интервьюеру понять ваши мыслительные процессы, увидеть, когда вы что-то неправильно поняли, или направить решение в определённом направлении.
  • Не стесняйтесь просить о помощи. Если вы прошли множество собеседований, в какой-то момент наступает полное забвение. Вместо того, чтобы застопориться на проблеме, попросите интервьюера снова объяснить суть вопроса или спросите что-то вроде «Может, здесь лучше использовать хеш-таблицу?» Покажите, как вы думаете о проблеме стратегически и творчески. Продемонстрируйте свои навыки решения проблем.

Собеседования по кодированию и алгоритмам

Не переходите к решению, прежде, чем изучите требования. В частности, задавайте вопросы интервьюеру: как много входных данных мы получаем? Десятки, миллионы, миллиарды? Сколько времени нужно алгоритму для решения проблемы? Может ли входное число быть отрицательным? Есть ли конкретные ограничения на память? Где мы запускаем алгоритм, локально или по сетке? Когда он запускается и можем ли мы кэшировать частичные результаты, например, с помощью индекса? Процесс анализа важен в реальной жизни, но особенно во время собеседования. Вы в основном определяете спецификацию для реализации. Поэтому можно говорить в течение пяти или даже десяти минут и совместно согласовать технические характеристики и дизайн, прежде чем вы начнёте выполнять «кодирование».

Начните с решения задачи «в лоб». Обсудите, почему это плохо. Быстро сотрите это. Сосредоточьтесь на количестве сравнений/поисков, которые есть в вашем коде. Покажите, как это не масштабируется до чисел в вашем дизайне.

Предложите способы сократить время поиска, используя хэш-таблицу или хитрый трюк. O (1) поиск почти всегда является «решением», которое ищет интервьюер. Используйте кэш для хранения промежуточных результатов. Чтобы подготовиться, прочитайте этот краткий обзор сложности и функции Big-O.

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

Обсудите сложность как во времени, так и в памяти, используя обозначение O (n).

Это сложно, но не забывайте делать заметки. Запишите имена интервьюеров. Запишите задаваемый вопрос, спецификации, о которых вы договорились, и то, как вы на них ответили. Спросите, можно ли сфотографировать ваш собственный код на доске. Задавайте вопросы. Подготовьте несколько собственных вопросов. Каждый интервьюер обычно заканчивает свою сессию «У вас есть вопросы ко мне?».

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

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

Как справиться с отказом

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

ЧИТАЙТЕ ТАКЖЕ:

Источник: Medium

Читайте также:

Десятилетие пьяных смс

Як найвідоміші люди бачать майбутнє і як змінюють світ

Мифы о бесплатной доставке

Что делать, если личные проблемы мешают работе?