Подготовка к интервью

Вопросы на собеседовании в Яндекс

978 вопросов с собеседований в Яндекс

978 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

Подборка объединяет вопросы, отмеченные на этапах интервью в Яндекс. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, backend, database.

Каталог

Результаты поиска

Найдено: 978
Теория

Реализовать функцию isMonotonic, которая принимает массив чисел и определяет, является ли он монотонным (возрастающим или убывающим). Возвращает true, если массив монотонный, иначе false. Реализовать за линейную сложность O(n).

Функция isMonotonic проверяет, является ли массив чисел монотонным — то есть либо не убывающим (каждое следующее число не меньше предыдущего), либо не возрастающим (каждое следующее число не больше предыдущего).

Читать ответ
Теория

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

Функция withTimeout должна принимать функцию, которая возвращает промис, и время в миллисекундах.

Читать ответ
Теория

Определить, является ли строка 'панграммой' — строкой, содержащей каждую букву алфавита хотя бы один раз.

Чтобы определить, является ли строка панграммой, нужно проверить, что в ней присутствуют все буквы алфавита хотя бы один раз. Для русского алфавита это 33 буквы.

Читать ответ
Лайвкодинг

Напишите функцию sleep, которая возвращает Promise и завершается через заданное количество миллисекунд.

Функция sleep должна возвращать Promise, который разрешится через заданное количество миллисекунд. Вот пример реализации:

Читать ответ
Теория

Реализовать декоратор callLimit(fn, limit, callback), который ограничивает число вызовов функции. Принимает: функцию для декорирования, максимальное количество вызовов, колбэк, вызываемый при последнем вызове (опционально). У возвращаемой функции должен быть метод reset для перезагрузки счётчика в начальное положение.

javascript function callLimit(fn, limit) { let count = 0;

Читать ответ
Поведенческий

Расскажите, пожалуйста, о своём опыте: какие задачи решаете, в чём ваша зона ответственности, с какими технологиями работали и как устроены процессы в команде?

В предыдущей компании команда фронтенд-разработчиков состояла из 6 человек: два middle, два senior и один тимлид. Мы работали по Agile-методологии с двухнедельными спринтами, ежедневными стендапами и ретроспективами.

Читать ответ
Теория

Нужно реализовать обработку сообщений, которые сервер может доставлять не по порядку: выводить их через `Render(message)` строго в порядке последовательных идентификаторов и как можно раньше, буферизуя более поздние сообщения.

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

Читать ответ