Вернуться в видеотеку

СОБЕСЕДОВАНИЕ JUNIOR FRONTEND РАЗРАБОТЧИКА | FRONTEND | REACT

Публичное техническое интервью фронтенд-разработчика с практическими задачами по JavaScript, TypeScript и React. В конце — развёрнутый фидбэк и разговор о переезде кандидата в Норвегию.

Источник: Ayub Begimkulov

Открыть на YouTube

Таймлайн

Коротко о видео

Автор проводит публичное техническое собеседование с фронтенд-разработчиком Тарасом, который рассказывает о четырёх годах опыта, React и работе над медицинским продуктом в Норвегии. Основная часть состоит из задач и разбора JavaScript, TypeScript и React: замыкания, ссылки, Map, event loop, React.memo, useCallback, useRef и оптимизация обработчика событий окна. В финале интервьюер даёт кандидату обратную связь о пробелах в базе, а кандидат делится личным опытом переезда и своим взглядом на рынок IT Норвегии.

Затронутые темы

Что взять на заметку

  • Для задач наподобие createCounter важно отличать замыкание с «живым» доступом к переменной от свойства объекта, куда примитив был записан как снимок текущего значения.
  • Замыкание стоит объяснять через сохранение доступа функции к лексическому окружению, а не только через шаблон «функция возвращает функцию».
  • Нужно уверенно различать передачу примитивов по значению и работу объектов по ссылке; это проверяется и в сравнении объектов, и в удалении дубликатов массива.
  • Map полезен, когда ключами должны быть не только строковые свойства: например, объекты или массивы; его get возвращает значение либо undefined, что нужно учитывать в TypeScript.
  • В event loop микрозадачи обрабатываются после освобождения call stack с более высоким приоритетом, а рендеринг браузера — отдельный процесс, не «макрозадача».
  • React.memo не предотвращает ререндер, если в дочерний компонент передаётся новая ссылка на функцию; useCallback имеет смысл для стабильности ссылки и связки с мемоизацией, а не ради уменьшения числа созданных функций.
  • Для универсального хука подписки на window-событие можно хранить актуальный обработчик в useRef: подписка остаётся стабильной, а listener вызывает handlerRef.current.

Рекомендуем посмотреть

52 мин
FrontendJunior

РЕАЛЬНОЕ СОБЕСЕДОВАНИЕ НА FRONTEND РАЗРАБОТЧИКА. ПРИТВОРИЛСЯ ДЖУНОМ

Запись технического интервью на позицию Junior Frontend-разработчика с подробным разбором JavaScript, React и менеджеров состояния. В конце автор пересказывает полученный фидбэк и параметры оффера.

46 мин
Frontend

СОБЕСЕДОВАНИЕ НА FRONTEND РАЗРАБОТЧИКА ЗП 250К. LIVE CODING

Запись интервью на Middle+ frontend-позицию: от обсуждения опыта кандидата до вопросов по браузеру, CSS, JavaScript, React, TypeScript и практических задач. Автор проходит его под вымышленной легендой для демонстрации процесса зрителям.

29 мин
FrontendMiddle

Реальное СОБЕСЕДОВАНИЕ на FRONTEND разработчика ЗП 200К

Реальное анонимизированное интервью на middle frontend/React-позицию: опыт кандидата, архитектурные и JavaScript-вопросы, затем тестовое задание. В финале автор кратко сообщает, почему выбрал другое предложение.