Как мы нанимаем
бэкенд-разработчиков
Общая информация
Цикл собеседований состоит из нескольких этапов: предварительное интервью — технические секции — финал. Технические секции можно провести в один день или разделить на несколько.

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

~ 1
месяц
длительность всех
собеседований
до 60
минут
длительность каждого
интервью
Zoom
или Skype
Код пишем в онлайн-редакторе Яндекс.Интервью


Материалы для подготовки

Помогут подготовиться к интервью и узнать о нас больше
Собеседования. Этапы
Получить представление, как организовано собеседование, поможет этот ролик:
  • Предварительное собеседование
    1 час
    • Содержит задачи на кодинг/алгоритмы и структуры данных. Как правило, интервьюер дает две задачи.
    • Также вас могут спросить об опыте и работе с разными технологиями (ЯП, ОС, БД). На собеседовании нужно писать код в онлайн-редакторе.
    • Если интервью пройдёт успешно, мы пригласим вас на следующие. Рекрутер расскажет, какие команды готовы продолжить диалог, и вы сможете выбрать наиболее интересные.
  • Основные технические интервью

Вас ждёт 2 испытания на программирование, чтобы точнее определить ваш уровень.
Задачи подразумевают написание кода, а именно:

Понять требование
Предложить решение
Реализовать его
Задачи технические — на логику, базовые структуры данных, а также владение основными конструкциями вашего языка программирования. У нас нет задач на знания фреймворков и сложных алгоритмов, потому что для нас важно умение программировать и желание развиваться.
С чем вы можете столкнуться:
  • Строки, массивы
  • Хеш-таблицы, словари
  • Обход двоичного дерева
  • Реализация различных примитивов: счетчиков, кешей, и т.д.
С чем вы не столкнетесь во время интервью:
  • Динамическое программирование
  • Вращение деревьев
  • Реализации куч, сортировок и других низкоуровневых вещей
  • Реализация дерева поиска
  • Графы
  • Дейкстра, KMP и другие алгоритмы.
  • Для разработчиков старшего уровня мы проводим архитектурную секцию

    На секции важно:

    • продемонстрировать аналитическое и критическое мышление, широкий кругозор, умение корректно формулировать свои мысли; 
    • спроектировать распределенную систему или ее часть, удовлетворяющую выбранным задачам и требованиям по нагрузке, доступности и т. д.;
    • оценить производительность системы в целом и объем вычислительных ресурсов, необходимый для ее штатного функционирования; 
    • показать понимание проблемы хранения и обработки данных в распределенных системах, достоинства и недостатки различных подходов к решению этой задачи;
    • предложить структуру данных и алгоритм, которые позволят решить задачу с минимальными затратами вычислительных ресурсов и трудоемкостью; 
    • показать понимание аспектов эксплуатации комплексных систем, балансировки нагрузки, обеспечения отказоустойчивости, соблюдения предъявляемых к системе технических требований по доступности и производительности.
  • Финальные встречи
    • Финал — это часовая встреча с руководителем команды, но могут присоединиться и другие разработчики, и менеджеры из проекта.
    • На этом этапе вы подробнее узнаете о сервисе, задачах и проектах направления.  В некоторых случаях, когда нам не хватило информации по итогам основных технических интервью, на финальной встрече мы можем задать технические задачи или вопросы. О таком формате мы обязательно предупредим заранее.
    • Количество встреч в зависимости от результатов интервью может варьироваться — как правило, от одного до пяти.
    • Не стесняйтесь уточнять все интересующие вас моменты, чтобы сделать осознанный выбор проекта.
    • По результатам всех финалов мы расскажем, какие команды готовы пригласить вас к себе, и будем ждать вашего решения.
  • Презентация оффера
    • По итогам выбора команды мы запускаем согласование оффера.
    • Предложение о работе мы делаем в одну команду. На презентации оффера мы рассказываем об условиях работы и можем еще раз обсудить подробнее проект и предлагаемую позицию.

Как повысить шанс на успех

  • Потренируйтесь решать задачи на онлайн-ресурсах.
  • Проговаривайте вслух ход мыслей, подробно обосновывайте выводы. Эксперту важно не только получить правильное решение задачи, но и понять, каким путем вы к нему пришли.
  • Не стесняйтесь просить подсказку у интервьюера.
  • Обязательно проверяйте код на ошибки, перед тем как его сдать.
  • Старайтесь предлагать разные решения: первое решение не всегда самое удачное. Если вам пришло в голову, как его можно улучшить, — непременно скажите об этом, даже если задачу уже рассмотрели и отложили в сторону.
До встречи на интервью!
Mon Apr 08 2024 16:54:55 GMT+0300 (Moscow Standard Time)