На frontend-интервью связывайте JavaScript с поведением браузера и пользователя. Хороший ответ заканчивается не API-функцией, а корректностью, производительностью, доступностью и способом отладки.
План
Пройдите этапы по порядку
- 01
Что выведет код с Promise и таймерами?
Постройте порядок синхронного кода, microtask queue и task queue. Объясните, когда браузер получает возможность отрисовать кадр и почему длинная синхронная работа блокирует ввод.
- 02
Как найти ошибку в чужом JavaScript-коде?
Сначала воспроизведите контракт на примере, затем проверьте мутацию, области видимости, асинхронные гонки и сложность. Предлагайте минимальное исправление и тест, который падал до него.
- 03
Когда массив, Map или Set меняют сложность решения?
Сравните поиск, вставку, порядок и сериализацию. Map/Set не являются автоматической оптимизацией: оцените количество данных, необходимость дубликатов и стоимость преобразований.
- 04
Как диагностировать медленную страницу?
Разделите загрузку, выполнение JavaScript, layout/paint и сетевые зависимости. Используйте Performance, Network и метрики реального пользователя; оптимизацию привяжите к найденному bottleneck, а не к общему списку советов.
- 05
Как спроектировать крупный frontend-модуль?
Соберите требования и нефункциональные ограничения, обозначьте состояние, данные, границы компонентов, кеш, ошибки, доступность и мониторинг. Для распределённой части оцените API, объём трафика и стратегию деградации.
- 06
Как проверить доступность интерфейса?
Начните с семантики, клавиатуры, фокуса и имени элемента, затем проверьте контраст и screen reader. Объясните, почему div с onClick не заменяет button без дополнительной реализации поведения.
Что обычно мешает
Частые ошибки
- Учить спецификацию вместо практики в DevTools.
- Оптимизировать React до измерения проблемы.
- Игнорировать клавиатуру и фокус.
- Сразу переписывать весь фрагмент на любимый фреймворк.
Перед следующим этапом
Чек-лист готовности
- Решаю задачи на JavaScript в браузере.
- Уверенно объясняю event loop.
- Могу провести code review вслух.
- Разбираю Performance trace и Network waterfall.
- Проектирую состояние, API и деградацию.
Коротко
Частые вопросы
Можно ли пользоваться интернетом?
Официальное описание указывает, что во время решения нельзя искать условие или получать стороннюю помощь. Если забыли стандартную функцию, интервьюер или редактор может подсказать — важнее идея.
Нужно ли знать React?
Конкретный фреймворк зависит от вакансии, но базовая секция проверяет JavaScript, алгоритмическое мышление и браузер. Для опытных ролей добавляются архитектурные вопросы.
Сколько длится секция?
На практические задачи обычно отводится около часа, а архитектурная секция в опубликованном описании занимает до полутора часов. Уточните актуальный маршрут у рекрутера.
Источники
Источники и редакционная политика
Материалы RecallDeck сопоставлены с официальной документацией и открытыми публикациями компаний, когда первичный источник доступен. Мы не связаны с упомянутыми работодателями, не публикуем конфиденциальные задания и не продаём места в подборках. Формат найма может меняться — уточняйте его у рекрутера.
От чтения к воспроизведению
Отрепетируйте полный цикл интервью.
RecallDeck возвращает сложные темы по расписанию и помогает удерживать в памяти язык, SQL, архитектуру и поведенческие истории.