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

Public interview for ReactJS Developer

Открытое ReactJS-собеседование с разбором типовых теоретических вопросов и задач на HOC и хуки. Ведущие обсуждают ответы кандидата, уточняют нюансы React и завершают встречу обратной связью.

Источник: Math.random: javascript community

Открыть на YouTube

Таймлайн

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

Публичное учебное собеседование по ReactJS: кандидат Олег отвечает на вопросы Максима и вместе с ним разбирает теорию и практические задачи. Обсуждаются функциональное программирование и Event Loop в JavaScript, устройство React, формы, SyntheticEvent, Error Boundaries, HOC, хуки и мемоизация. В конце интервьюер даёт кандидату положительную обратную связь и отмечает темы, которые стоит дополнительно повторить, включая события React и render props.

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

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

  • Для Event Loop важно разделять синхронный код, микрозадачи Promise и задачи таймеров; setTimeout с задержкой 0 не гарантирует немедленного исполнения.
  • Контролируемый input хранит значение в state React и обновляет его через обработчик; у неконтролируемого компонента значение читают из DOM через ref.
  • В обсуждаемой версии React 17 отменён pooling SyntheticEvent, поэтому прежняя необходимость вызывать event.persist() для отложенного доступа к полям события больше не является обычным случаем.
  • useCallback не предотвращает создание переданной ему функции при каждом рендере: при неизменных зависимостях он возвращает прежнюю ссылку. Польза возникает, когда стабильная ссылка нужна memoized-дочернему компоненту или другой зависимой логике.
  • Для счётчика на setInterval следует использовать функциональное обновление setState, чтобы не захватить устаревшее значение в замыкании; интервал нужно очищать при остановке и размонтировании компонента.
  • Идентификатор интервала между рендерами компонента разумно хранить в useRef; это избегает пересоздания обычной локальной переменной при каждом рендере.
  • При подготовке стоит уметь объяснить Error Boundary: componentDidCatch обычно используют для побочных эффектов, например логирования, а static getDerivedStateFromError — чтобы обновить state и показать fallback UI.

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

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-вопросы, затем тестовое задание. В финале автор кратко сообщает, почему выбрал другое предложение.