Цикл собеседований состоит из нескольких этапов: предварительное интервью — технические секции — финал. Технические секции можно провести в один день или разделить на несколько.
Стараемся давать обратную связь по результатам как можно чаще: приходим с промежуточным фидбэком между этапами и с финальным по итогам всех собеседований через день-два после встречи.
~ 1
месяц
длительность всех
собеседований
до 60
минут
длительность каждого
интервью
Zoom
или Skype
Код пишем в онлайн-редакторе Яндекс.Интервью
Материалы для подготовки
Помогут подготовиться к интервью и узнать о нас больше
Получить представление, как организовано собеседование, поможет этот ролик:
Предварительное собеседование
1 час
Содержит задачи на кодинг/алгоритмы и структуры данных. Как правило, интервьюер дает две задачи.
Также вас могут спросить об опыте и работе с разными технологиями (ЯП, ОС, БД). На собеседовании нужно писать код в онлайн-редакторе.
Если интервью пройдёт успешно, мы пригласим вас на следующие. Рекрутер расскажет, какие команды готовы продолжить диалог, и вы сможете выбрать наиболее интересные.
Основные
технические
интервью
Вас ждёт 2 испытания на программирование, чтобы точнее определить ваш уровень. Задачи подразумевают написание кода, а именно:
Понять требование
Предложить решение
Реализовать его
Задачи технические — на логику, базовые структуры данных, а также владение основными конструкциями вашего языка программирования. У нас нет задач на знания фреймворков и сложных алгоритмов, потому что для нас важно умение программировать и желание развиваться.
С чем вы можете столкнуться:
Строки, массивы
Хеш-таблицы, словари
Обход двоичного дерева
Реализация различных примитивов: счетчиков, кешей, и т.д.
С чем вы не столкнетесь во время интервью:
Динамическое программирование
Вращение деревьев
Реализации куч, сортировок и других низкоуровневых вещей
Реализация дерева поиска
Графы
Дейкстра, KMP и другие алгоритмы.
Для разработчиков старшего уровня мы проводим архитектурную
секцию
На секции важно:
продемонстрировать аналитическое и критическое мышление, широкий кругозор, умение корректно формулировать свои мысли;
спроектировать распределенную систему или ее часть, удовлетворяющую выбранным задачам и требованиям по нагрузке, доступности и т. д.;
оценить производительность системы в целом и объем вычислительных ресурсов, необходимый для ее штатного функционирования;
показать понимание проблемы хранения и обработки данных в распределенных системах, достоинства и недостатки различных подходов к решению этой задачи;
предложить структуру данных и алгоритм, которые позволят решить задачу с минимальными затратами вычислительных ресурсов и трудоемкостью;
показать понимание аспектов эксплуатации комплексных систем, балансировки нагрузки, обеспечения отказоустойчивости, соблюдения предъявляемых к системе технических требований по доступности и производительности.
Финальные
встречи
Финал — это часовая встреча с руководителем команды, но могут присоединиться и другие разработчики, и менеджеры из проекта.
На этом этапе вы подробнее узнаете о сервисе, задачах и проектах направления. В некоторых случаях, когда нам не хватило информации по итогам основных технических интервью, на финальной встрече мы можем задать технические задачи или вопросы. О таком формате мы обязательно предупредим заранее.
Количество встреч в зависимости от результатов интервью может варьироваться — как правило, от одного до пяти.
Не стесняйтесь уточнять все интересующие вас моменты, чтобы сделать осознанный выбор проекта.
По результатам всех финалов мы расскажем, какие команды готовы пригласить вас к себе, и будем ждать вашего решения.
Презентация
оффера
По итогам выбора команды мы запускаем согласование оффера.
Предложение о работе мы делаем в одну команду. На презентации оффера мы рассказываем об условиях работы и можем еще раз обсудить подробнее проект и предлагаемую позицию.
Как повысить шанс на успех
Потренируйтесь решать задачи на онлайн-ресурсах.
Проговаривайте вслух ход мыслей, подробно обосновывайте выводы. Эксперту важно не только получить правильное решение задачи, но и понять, каким путем вы к нему пришли.
Не стесняйтесь просить подсказку у интервьюера.
Обязательно проверяйте код на ошибки, перед тем как его сдать.
Старайтесь предлагать разные решения: первое решение не всегда самое удачное. Если вам пришло в голову, как его можно улучшить, — непременно скажите об этом, даже если задачу уже рассмотрели и отложили в сторону.