Собеседование в Яндексе: рассказ очевидца

1
31516
Добавить в избранное

«Заметки на полях» о собеседовании в Яндекс — одной из крупнейших компаний российского рынка IT из первых уст.






Яндекс — это такой большой стартап. Когда ты идёшь туда, например, на js-разработчика, тебя могут прособеседовать люди из совершенно разных команд. Одни могут быть заинтересованы в твоем знании Vanilla.js и DOM, другим может понадобиться React (что совершенно не отменяет необходимости в Vanilla.js), третьи спросят про алгоритмы, или node.js, или canvas.

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

О форме собеседования

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

О вопросах (и немножко об ответах)

Началось все с его вопроса «Расскажи о себе в плане программирования, в каких проектах участвовал, что интересно?». Автор честно рассказал весь почти 9-летний свой опыт и любовь к написанию велосипедов (что, кстати, как потом отметил hr, огромный плюс).

Далее следовали стандартные вопросы по js (достаточно простые), например, «Приходилось ли использовать разные code-style?», «Были ли совместные проекты с кем-нибудь?», «Какие инструменты используешь для написания кода?».

Была пара вопросов по тестовому заданию, а также общие вопросы из серии «С какими API работал?», «Самое фундаментальное отличие FF и Chrome» (спойлер: движок, Gecko и WebKit).

Второй собеседующий сначала погонял автора по простым вопросам по js (отличия var и let, arrow functions), а затем дал код, где был класс и одни и те же методы, объявленные разными способами (два варианта — внутри конструктора, два — в прототипе), и попросил рассказать отличия, преимущества и недостатки.

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

На вопрос, почему в js сложные структуры данных (вроде бинарного дерева) реализуются плохо, автор ответить не смог. Тогда собеседующий просто рассказал ему это. Оказывается, JS не умеет работать с памятью линейно, и даже массив на самом деле может быть разбросан по памяти кусками.

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

Затем автор написал на доске маркером алгоритм сортировки пузырьком. Собеседующий сразу сказал: «пиши, что приходит в голову, а дальше будем разбираться, что неправильно». Автор написал. Он посмотрел, сказал, что это работать не должно и начал думать. В итоге надумал, что работать, хоть и не должно, но будет.

Эпилог

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

Другие статьи по теме

Как попасть на собеседование в компанию мечты

Как успешно пройти любое техническое собеседование

Готовитесь к собеседованию?

Подпишитесь на нашу рассылку, чтобы получать больше интересных материалов:

И не беспокойтесь, мы тоже не любим спам. Отписаться можно в любое время.




Добавить комментарий