Собеседование в Яндекс: где мне помог ChatGPT?
Раз уж в предыдущем посте мы затронули тему подготовки к собеседованиям, давайте поделюсь своим недавним опытом. В декабре я рассказывал про новый процесс собеседования разработчиков в Яндекс. В начале года мне предоставилась возможность опробовать его на себе. Расскажу, как это было.
TL; DR
Стало гораздо лучше, быстрее и понятнее. Самое главное — у меня было три секции! Три! Не 5, не 10, не 17 — только 3, каждая по часу. Вот что на них происходило.
1. Скрининг
Дали готовый код. Там была заготовка логики и тесты. Надо было понять код, проверить, нет ли багов в тестах. Дальше надо было реализовать логику так, чтобы тесты в итоге прошли. Это всё как обычно в онлайн-редакторе без запуска кода и компиляции. Причём в коде была многопоточка — на мой взгляд, не самая простая.
Я удивился, что процесс начался именно с такой секции, но в целом выглядит логично — так как я в компании уже работал, эта секция даёт быстро понять, не растерял ли навыки на тот грейд, который у меня был.
2. Алгосекция
Здесь были старые добрые leetcode-like задачи. Решил обе, но пришлось попотеть. Перед секцией я 3-4 дня решал leetcode по часу плюс положился на прежний опыт. Этого хватило, чтобы справиться с обеими задачами в срок, но это не было прям лёгкой прогулкой. Так что настоятельно рекомендую перед такими секциями выделить побольше дней на прорешивание leetcode, просто чтобы вернуть себя в форму, если вы давно этого не делали.
Минутка AI-рефлексии
Когда я шёл в этот процесс, мне было ещё интересно узнать, насколько сейчас проще собеседоваться на разработчика, имея под рукой ChatGPT/Claude/etc. Мне показалось, что вообще не проще, потому что я не понимал, а куда в процессе секции эти GPT-воткнуть? Я всё время был в диалоге с ревьюером, постоянно вслух рассуждал и комментировал, какой код и почему я пишу. В этом потоке совершенно не понятно, как можно уйти в ChatGPT, сформулировать ему задачу, а потом ещё каким-то образом делать вид, что это ты сам из головы придумал.
У меня только на скрининге был момент, когда мне надо освежить в голове один API стандартной библиотеки C++, и я понял, что мне это проще сделать в ChatGPT, чем копаться в cppreference. Я сказал об этом интервьюеру, он кивнул, и мы пошли дальше.
3. Оценка опыта
Впервые проходил такую секцию. Нужно было заранее подготовить рассказ о проекте, в котором я сыграл ключевую роль и в котором уже есть понятные результаты. И вот это как раз та секция, где ChatGPT жжёт 🔥 Но не чтобы облапошить интервьюера, а чтобы как следует упаковать свой опыт и выгодно его преподнести (недаром я недавно говорил о важности упаковки).
Сначала я думал: «Ну я просто пишу код... Какие у меня есть проекты с ключевой ролью и понятными результатами?» Потом придумал 4 кандидата на роль таких проектов. Про каждый из таких проектов я надиктовал в ChatGPT всё, что есть в голове, и поставил ему задачу выбрать тот, который лучше всего характеризует меня как сильного специалиста. После пары итераций был отобран топ-1 кандидат для рассказа на секции. Дальше там же я сделал хорошие формулировки результатов и своего вклада, и у меня получилась хорошая презентация проекта. С ней я и пришёл на собеседование.
Интервьюер много спрашивал меня и вширь, и вглубь — было интересно, и исход секции был положительным.
Здесь хочу отметить важное — ChatGPT помог мне не нафантазировать то, чего не было, а именно посмотреть на мою работу с большей высоты, «увидеть за деревьями лес» и презентовать проект целиком. В общем, мой вам совет — пользуйтесь.
Итоги
В итоге я на своём опыте прошёл новый процесс собеседований разработчиков в Яндексе, и считаю, что компании правда удалось сделать его более быстрым и понятным для кандидатов. К тому же мне удалось найти win-win подход к применению AI в подготовке к собеседованиям — ChatGPT сильно помог выгодно презентовать свой опыт.
Расскажите в комментариях, как вы применяете AI для подготовки и прохождения собеседований?
В этом посте были ссылки, но мы их удалили по правилам Сетки