Статья будет полезна тем, кому интересно как проходят встречи с представителями команд на стажировку в Яндекс, к чему стоит быть готовым и чего делать не стоит. Будет описан мой опыт прохождения финалов с командами: что спрашивали, какие ошибки допускал, фидбеки команд и др.

*Финалы - финальные встречи с представителями команд.

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

  • Рекомендуется устанавливать встречи с командами с интервалом в пару дней, чтобы получить обратную связь до следующей встречи. Фидбеки обычно приходят на следующий день после встречи, если у вас в этот день нет других команд.

  • По описанию команды можно понять, что будут спрашивать, но не всегда.

  • После каждой встречи (и получения фидбека) важно работать над ошибками.

  • Количество финалов ограничено (знаю случай с 6 финалами, но наверняка будет меньше, если вас никто не выбрал до этого).

  • У вас есть только одна попытка попасть в конкретную команду, второго шанса не будет.

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

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

  • Не говорите о том, о чем не спрашивают. Исключение составляют проекты и опыт - здесь рассказывайте больше, чем спрашивают.

  • Подготовьте текст о том, кем вы хотите стать и чего вы ожидаете от стажировки.

  • Будьте готовы ответить на вопросы по теории (структуры данных, нюансы языка программирования, где и как применяется, в чем разница, как работает и так далее), а также к написанию SQL-запросов и решению абстрактных задач.

  • Задавая вопросы, будьте аккуратны - они могут повлиять на итоговое решение

  • Проявляйте интерес ко всему, что предлагают – скорее всего, вы не правильно понимаете, чем придется заниматься в команде. Принимайте решение только после получения предложения от команды.

  • Средний возраст большинства собеседующих меня команд около 25 лет.

Краткая информация обо мне: 32 года, образование среднее-специальное (не профильное), без коммерческого опыта в IT (не учитываю стажировку в стартапе и пару проектов на заказ). Подготовка к Яндексу заняла не менее года.

Примерно так выглядит мой рассказ "о себе"
  • Начал изучать Python в конце 2021 по программе курса Python разработчик одной из школ. Во время обучения я разработал несколько проектов на django, DRF, FastAPI, поработал с базами данных (sqlite, PostgreSQL), Docker и яндекс облаком.

  • После обучения на заказ разработал несколько проектов - телеграм бота для перессылки меда контента в каналы администратора и небольшой проект-админку на DRF, для сохранения данных из парсера.

  • Проходил стажировку в стартапе, который разрабатывал проект в рамках IT для взаимодействия заказчиков и исполнителей. В проекте занимался разработкой чата, где взаимодействовали заказчики и исполнители.Проект состоял из основного приложения на Django и сервиса чата, написанного на FastAPI.

Хронология событий

После прохождения алгоритмической* секции вам присылают опросник следующего содержания:

  • Уточните ваш вуз и курс, на котором вы обучаетесь.

  • В каком городе вы готовы проходить стажировку?

  • Уточните также, какая занятость вам больше подходит: 20/30/40 часов в неделю?

  • Когда вам будет удобно приступить к стажировке?

  • Есть ли у вас предпочтения по языку программирования, задачам или технологиям?

  • Рассматриваете ли работу на условиях полной занятости после стажировки?

*Различия между технической и алгоритмической (она же АА) секцией, о которых вам следует знать. У меня (на бэкэнде) секции представляли собой две задачи на алгоритмы, только в АА секции дополнительно могут попросить написать тесты для ваших решений. Так же смотрят насколько быстро вы пришли к решению (если долго думали - это красный флаг, но не приговор), чистоту кода, именование переменных и т.д. Обычно надо предоставить полностью рабочее решение двух задач за час.

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

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

*По статистике рекрутера, стажеры находят себе команду в среднем пройдя 1-3 финала.

Структура встреч (каждая длится около часа):

  • Ты рассказываешь о себе, своём опыте.

  • Тебе задают вопросы по всему, что интересно данной команде. Могут дать какие-нибудь задачи.

  • Интервьюер рассказывает о своей команде.

  • Ты задаешь свои вопросы.

Финал с первой командой

Финалы начинаются с рассказа "о себе". Тут я допустил банальную ошибку - плохо подготовил рассказ "о себе" и не помнил нюансов проекта стажировки. Это вылилось в то, что начали задавать вопросы по проекту, о котором я мало помнил. С каждым вопросом я закапывался глубже и глубже в яму (стыдно было рассказывать, что задачи для стажеров передавались из "уст в уста" в виде списка задач проекта, что из этого списка еще не сделано, а всё остальное надо доделать). Спрашивали иерархию исключений, но так как я её не помнил, то рассказал в общих чертах. Интересовались тем, как я вижу своё развитие, на что ответил: "мне интересен путь в сторону архитектуры, нежели управления людьми". От себя добавил, что не хотел бы работать с "высшей математикой" (подразумевал ML, DS и подобные, но не озвучил это), потому что у меня нет "математической базы", а наверстывание может занять слишком много времени (по итогу команде оказалось это не важно, но еще одну причину для отказа я заработал).

Фидбек

Финал с командами буткемпа

Началась встреча с фразы, которую не совсем ожидал услышать: "наша встреча будет проходить следующим образом - у тебя будет две задачи и час времени". Однако подключился представитель ещё одной команды и сказал что это финалы.
Начало стандартное - представление "о себе". Дальше следовала неочевидная ошибка - я сказал, что мне больше интересна разработка, чем сети, деплои и т.п. (я неправильно понимал, чем предстоит заниматься в команде, как впрочем и во многих других, но было слишком поздно). Далее своеобразный блиц опрос по многопоточности/многопроцессорности, как это работает; в чем отличие asyncio и многопоточности; как работает/устроен GIL в Python и для чего он нужен (в части вопросов "плавал", так как глубоко тему не изучал). Спросили теорию графов, где используются - я ответил, но хотели услышать, что используются в импортах.

Фидбек

Не говорите команде что вам что-то не интересно. Скорее всего вы не правильно понимаете чем вам придется заниматься в команде.
Не говорите команде что вам что-то не интересно. Скорее всего вы не правильно понимаете чем вам придется заниматься в команде.

Финал с третьей командой

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

Фидбек

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

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

Финал с четвертой командой

Проведя работу над ошибками, моё «о себе» приняло вид того, что написал в начале статьи, но и тут допустил ошибку. При рассказе о своём опыте я спросил — рассказывать, чем я занимался на проекте стажировки, или нет? На что мне ответили «не надо», тем самым интервьюер не получил достаточно инф ормации о моем опыте, что в том числе отразилось на итоговом решении.

Дальше был вопрос «что было самым сложным на стажировке», на что я ответил — «в начале стажировки пришлось изменять структуру проекта, попутно разбираясь в нем». Были вопросы по SQL, а точнее попросили в онлайн‑редакторе написать пару запросов на создание, объединение таблиц и выборку из них. Тут я накосячил с COUNT (надо было выбрать столбцы с null для корректного подсчета количества) и спутал названия JOIN`ов. Интервьюер спрашивал об удаленке, так как у них есть данный вариант, на что я ответил, что рассматриваю только офис. В конце я задал вопросы про дежурства (про их существование узнал от других команд) и то, как в проекте взаимодействует бэкенд с фронтендом. Лучше бы не задавал.

Фидбек

Вопросов про удаленку я не задавал, возможно интервьюер ошибся.
Вопросов про удаленку я не задавал, возможно интервьюер ошибся.

Проведя очередную работу над ошибками и повторением SQL, мы подошли к последнему, на данный момент, финалу.

Финал с пятой командой

«О себе» с последующим переходом к вопросам о том, что такое хэшсет, как работает/устроен. Далее вопрос о том, чего я хочу от стажировки. Тут я допускаю банальную ошибку. Находясь в гнетущем состоянии постоянных отказов, на вопрос чего хочу от стажировки, ответил честно и коротко — хочу работать (а должен был ответить по заранее заготовленному тексту). На уточняющие вопросы по данной теме отвечал так же, что считаю послужило основной причиной «краткости ответов".

Фидбек

Не припомню вопросов по sql и БД, вероятно интервьюер перепутал с другим кандидатом.
Не припомню вопросов по sql и БД, вероятно интервьюер перепутал с другим кандидатом.

Итог

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

Рекрутер сообщил мне что команд (которым я интересен) больше нет, и предлагает подготовиться минимум пол года для поиска новых команд (для справки - это длительность двух потоков стажировок по 40 часов неделю). Данный вариант мне совсем не нравится.

Понимаю, что я не могу нравится всем командам, но это не значит что нет команд, которым я могу быть интересен и полезен в данный момент (либо через неделю/месяц, но явно раньше чем через пол года).

Мне не хочется терять время зря. Отвечать на вопросы более подробно я готов уже сейчас.

P.S. Если вы являетесь представителем команды Яндекса, вам нужны стажеры и я могу быть вам полезен — дайте знать.

Комментарии (0)