Как я проходила собеседования в Яндекс: мой непростой, но успешный опыт
Уже чуть больше полугода я работаю в поиске Яндекса релиз-инженером. И чуть ли не с первого рабочего дня хочу написать о том, как отзывалась на вакансию, как проходила собеседования, что мне в этом процессе понравилось, а что — не очень. Но сначала я входила в курс дела, а потом каждый день в моей работе появлялись такие интересные задачи, что я даже не была готов отвлечься от них на этот рассказ.
А еще год назад у меня в жизни была вроде бы похожая, но в то же время совсем другая ситуация — времени на хобби не хватало, задач было много, но они не приносили мне никакого удовольствия. В итоге я решилась на перемены. На самом деле, эта позиция в Яндексе не была первой, которую я рассматривала. За то время, которое прошло до моего первого рабочего дня, я освежила в голове очень много тем. И перед финальным собеседованием мне пришлось взяться ещё за несколько. Сейчас я понимаю, какие ошибки совершила в этом процессе, поэтому хочу поделиться своим опытом с вами. Буду рада, если кому-то это будет полезно. Хочу сказать, что это не официальные рецепты от рекрутеров Яндекса, а только мои собственные выводы. В конце поста я поделюсь списком литературы, которая мне помогла в подготовке, и еще добавлю те источники, которые считаю полезными, оглядываясь назад.
Каждый космический дальнобойщик знает, что идеальных космических кораблей в реальном мире не бывает. Всегда что-то идёт не так: если у корабля мощные двигатели – значит, наверняка забыли смонтировать на корабле противометеорные пушки; если в избытке кают для экипажа – значит, жди беды с трюмами для багажа.
А ещё опытные космические волки наверняка замечали, что процесс сборки звездолёта из кусочков канализационных систем и прочих подручных средств имеет определённое сходство с подготовкой к собеседованиям и другим важным событиям человеческой жизни. Задумывалась ли я об этом, когда прошлой осенью впервые припланетилась в офисе Яндекса?
You look so tired and unhappyКонечно, не задумывалась. В Яндексе тогда работал mkot, а мой собственный звездолет в то время я случайно припарковала в одной небольшой компании, занимавшейся разработкой микроконтроллерных систем сбора данных. На собеседовании я просто показала, чем занимаюсь в свободное время, и меня взяли. Каждый день, как любой обычный пилот межгалактического крейсера разработчик, я работала с утра до ночи, а иногда и во сне. Руководство требовало невозможного, мечтало о производственных подвигах, и я старалась изо всех сил.
Понимание вреда ежедневных подвигов для здоровья пришло не сразу. Сначала я обнаружила, что мне не хватает времени на хобби, потом начался цикл бессмысленных командировок, и времени не осталось даже на жизнь. Спустя месяцы я (наконец!) поняла, что цели руководства (заработать побольше денег) не совпадают с моими собственными (сделать людей счастливее). Ощущение пустоты собственной жизни не может компенсировать никакая зарплата. Я была полна решимости завести трактор звездолет, даже купила чемоданы, вот только не знала, куда направиться. И тут у меня зазвонил телефон.
I'm gonna put on an iron shirtЗвонок IT-рекрутера выбил меня из колеи. Я была настолько поглощена мыслями об увольнении с текущей работы, что даже и не думала о поиске новой. Рекрутер искал кого-то для Лаборатории Касперского, и я решила, что было бы интересно попробовать свои силы. IT-рекрутер очень настаивал на необходимости представить резюме, которого у меня, конечно же, не было, в течение ближайших двух часов. Я послушала его, и допустила самую значительную и одновременно самую счастливую ошибку в этой истории: сделала некачественное резюме на скорую руку. Из ЛК мне так и не позвонили.
Трудно было не сделать два простых вывода. Первый: я могу работать там, где пожелаю, если постараюсь. Второй: нужно хорошее резюме. На несколько недель я погрузилась в раздумья. Наконец, в голове щелкнуло: «Я очень-очень хочу работать в Яндексе». И я принялась за составление серьёзного резюме. Потратила на него, кажется, целый день. Выбрала самую интересную вакансию, отправила заявку, и уже на следующий день получила приглашение на скайп-собеседование.
И вот тут я впервые превратилась в космического дальнобойщика. У меня было три недели на подготовку к собеседованию, и огромное количество тем, которые нужно было освежить в памяти: *nix, shell-скриптинг, Python, awk, системы контроля версий, TCP/IP, тестирование, алгоритмы и структуры данных (почти полный список в конце этой статьи). Я не знала, что из этого более важно, а потому постаралась «нахватать как можно больше разных блоков». Возможно, это не лучшая идея, но других у меня не было.
Собеседование заняло около часа. Прошло без блеска, но вроде бы достойно. Много спрашивали про bash и алгоритмы, но, я думаю, могли спросить о чём угодно – а я была, как мне казалось, чертовски хорошо готова к вопросам, хотя и волновалась.
На следующий день (14 мая) я получила письмо:
Eight tons of armored steel and any weapon you will needНа подготовку к очному собеседованию оставалось меньше двух недель, и я вновь принялась собирать свой «космический корабль» из знаний. На этот раз я решила сфокусироваться на «Advanced BASH scripting», «Алгоритмах» Кормена и «Python» Лутца. Какое-то руководство по администрированию Linux-систем я читала уже в самолете.
Вот что я написала в своём блоге на следующий день:
Подъём в 4 утра, такси до аэропорта, взлёт, посадка, аэроэкспресс, метро — всё стандартно, и всё по расписанию. Я надеялась посидеть с 10 до 12 в каком-нибудь кафе, и очень рассчитывала на Cабвей, отмеченный на картах Яндекса. К сожалению, Сабвея не оказалось, и пришлось идти в Макдоналдс. Заполнив желудок тонной джанк-фуда, я отправилась к офису Яндекса пешком — и оказалась там на час раньше назначенного времени. Очень неловко получилось, в общем. Пришлось подождать немного, меня встретила Ольга из отдела персонала (или как он правильно называется?), и началось очное собеседование.
Сначала разговор на общие темы: как добралась, не проголодалась ли, что делала на работе. Потом к разговору присоединились остальные интервьюеры. Сначала поговорили про «домашнее задание» — стыдно и забавно, что простую задачу я не смогла решить на скайп-собеседовании. Хоть для нахождения правильного решения понадобилась всего минута, эта минута была уже после скайп-собеседования. Потом — пара задачек на сообразительность (и тервер).
Затем мне предложили пару приближенных к реальности задач. Задачи, как мне кажется, в первую очередь были темами для беседы. Боюсь, что отвечала я не очень хорошо — но, кажется, мои ответы всех более-менее устроили. Наконец, мне дали возможность реализовать решение задачи. Самоуверенно сказала, что «минут 40 мне хватит». Времени не засекала, но, кажется, копалась вдвое дольше. Под конец допустила в коде несколько досадных ошибок — одну по незнанию lockfile, и две из-за невнимательности. В своё оправдание я могу сказать лишь, что к тому моменту была на ногах 12 часов, и очень устала. Хотя, такие ошибки можно пропустить и без перелета, просто невнимательно перечитывая написанный код.
Код я писала в абсолютном одиночестве; когда дописала — снова пришли интервьюеры (кстати, очень приятные люди), посмотрели на код, и сказали, что больше мучить меня не будут. Всё собеседование заняло примерно пять часов. Наконец, мне пообещали, что свяжутся со мной, и попрощались.
Сейчас у меня есть несколько комментариев к этой истории.
Первую серьёзную ошибку я совершила ещё за неделю до собеседования, когда покупала авиабилеты. Мальчики и девочки, не стоит делать два гиперпрыжка перелета в один день. Поездка на такси в аэропорт в четыре часа утра и двухчасовой перелёт вряд ли скажутся положительно на вашем самочувствии. Перед собеседованием очень важно выспаться и отдохнуть.
Вторая и третья ошибки связаны со временем. Совершенно случайно я пришла в офис за час до назначенного времени, о чём сообщила HR'ам, и собеседование началось уже в 11:20. Гораздо полезнее было бы отдохнуть, расслабиться и порассматривать лошадок перед офисом, не говоря о том, что мне было стыдно из-за нарушения договоренностей и чужих планов. Когда я прикидывала, сколько времени мне понадобится на решение задачи, кажется, лучше было бы умножить оценку трудозатрат на два (а то и на три).
Четвертая ошибка заключалась в том, что я не следила за своим самочувствием, и работала на отказ. Если бы я выключила кондиционер (честно говоря, за пять часов под ветерком я чуть не умерла от холода), и время от времени делала перерывы на чай, то определенно чувствовала бы себя лучше.
Enjoy yourself, it's later than you thinkВ жизни любого космического дальнобойщика однажды наступает момент, когда его посудина оказывается в открытом космосе с единственным работающим двигателем. Так и я чувствовала себя, когда бесконечно долго ждала ответа от Яндекса. Лето, работа. Лето, работа.
Спустя месяц после собеседования я заметила в своём блоге:
Да. Я старалась, и получила вежливый отказ, что-то вроде «Мы бы хотели вас взять, но не можем». Возможно, это было связано с закрытием хостинга видео – я как раз собеседовался на вакансию в Видео. Возможно, это было связано с тем, как я показала себя на собеседовании. «Ну нет, так не пойдет! Чемоданы куплены, цель выбрана. Попробую ещё раз!» — решила я, и отправила заявку с резюме на соседнюю вакансию.
Знаете, что такое «сложность: хардкор» в испытании «сборка космического корабля из подручных средств»? Скайп-собеседование назначили через два дня, а мне было просто необходимо освежить в памяти знания C++, алгоритмов и структур данных, bash и методик тестирования.
Hold your breath and count to tenКонечно, приключения на этом не закончились. Мне пришлось пройти веселый бюрократический процесс увольнения, подарить друзьям и родственникам почти всё накопленное за много лет имущество, пройти много километров с чемоданами по Москве, и долго-долго искать квартиру. В общем, хватило бы на ещё одну статью.
All they've got's imaginationКто-то (кажется, Костя Горский) сказал примерно следующее: «Первые полгода в Яндексе мне казалось, что я попал на космический корабль».
Но оглядываясь вокруг, я понимаю, что для меня Яндекс в первую очередь – это множество талантливых и интересных людей. И вот о чем я вдруг подумала: может быть, дело совсем не в модулях космического корабля, а в его пилоте?