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

Аватарка пользователя Дух айтишной эмо школы

Что спрашивают на собеседованиях в Google, Amazon и других топовых айти-компаниях, а также как к этим вопросам подготовиться.

IT-блогер Александр Лукин рассказал о том, что спрашивают на собеседованиях в Google, Amazon и других топовых айти-компаниях, а также о том, как к этим вопросам подготовиться.

Краткое резюме:

  1. Саша работает в Amazon в Берлине и делится опытом о том, как устроиться в топовую зарубежную IT-компанию.
  2. Работа в Google с детства была его мечтой из-за высоких зарплат, возможности работать по всему миру и дополнительных бонусов, таких как бесплатная еда и места для отдыха.
  3. Топовые IT-компании, такие как Google, Twitter, Amazon, имеют схожие условия работы и процесс собеседования.
  4. Процесс собеседования включает телефонное интервью и очное собеседование (on-site), для которого кандидатам предоставляются билеты и проживание.
  5. Основная часть собеседования – решение алгоритмических задач, которые можно практиковать на сайте Leetcode.
  6. Для кандидатов с опытом работы 3-4 года предусмотрен этап System Design, где оценивается способность к проектированию систем.
  7. Подготовка к System Design включает изучение различных технологий и подходов к решению задач, рекомендуется сайт Highscalability.
  8. На собеседовании могут задавать общие вопросы, связанные с резюме и профессиональным опытом кандидата.
  9. Саша утверждает, что устроиться в топовую IT-компанию сложно, но возможно, и предлагает на своем канале полезные материалы для подготовки к собеседованиям.

Ниже — транскрибация ролика от нейросети.

***

Привет, меня зовут Саша, я работаю в компании Amazon в Берлине, и в этом видео я хочу рассказать вам о том, как попасть в топовую зарубежную IT-компанию. Вообще, лично для меня попасть в Google было мечтой с самого детства, когда я впервые узнал о том, какие там условия работы, что там огромные зарплаты, можно работать в любой стране мира, что там куча еды, пиво в холодильнике, и что главное, поразило меня больше всего, то, что там есть кровати, где можно поспать, если ты вдруг устал после рабочего дня. В общем, все эти бонусы работы в Google достойны отдельного видео. А сейчас давайте перейдем к самому главному. Как пройти собеседование.

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

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

Телефонное собеседование

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

Очное собеседование

После того, как вы успешно прошли первую часть, то есть телефонное собеседование, вас ждет второе — это очное собеседование или on-site.

Поскольку в России или вообще в странах СНГ мало офисов этих компаний, то вам покупают билеты на самолет, пару ночей в отеле, и вы летите в страну, где есть офис выбранной вами компании.

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

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

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

После этого вы будете писать его на абсолютно любом языке программирования, то есть можно на Java, можно на C++, это абсолютно не важно. Здесь главное заранее нарешать как можно больше таких задач, то есть набить руку, потому что в конце концов все эти задачи все равно более-менее похожи. Самым популярным сайтом для решения задач является сайт Litcode. На нем собрано огромное количество задач, которые реально спрашивают людей на собеседованиях. Они разбиты во-первых по темам, а во-вторых по уровню сложности.

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

Этап System Design

System Design — это открытый вопрос уровня спроектирования ленты. То есть у вас есть час времени, за который вы должны поверхностно пробежаться по тому, как вы будете реализовывать это приложение. Главное отличие здесь — это то, что это такой очень открытый вопрос, в котором нет правильного и неправильного ответа. Здесь смотрится скорее на то, как именно вы рассуждаете. Подготовиться к систем-дизайну, с одной стороны, тяжелее, потому что нет такого четкого алгоритма, которому вы должны следовать, чтобы пройти собеседование. Но, с другой стороны, на самом деле, подход к решению всегда одинаковый. То есть, вы всегда будете думать о том, какую базу данных, например, использовать. Там, реляционную или нереляционную. Если не реляционную, то какую именно?

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

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

Заключение

В заключение хочу сказать несколько вещей.

Во-первых, конечно, упасть в топовые IT-компании — это непросто.

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

В-третьих, по-моему, это просто интересно. Вы же ничего не теряете. Вам оплачивают отель, покупают билеты, устраивают экскурсию по офису офигенной компании. То, что требуется от вас, это просто съездить и пройти 4 или 5 собеседований, то есть пообщаться с умными людьми.

Google
Собеседование
Amazon
43