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

Два реальных технических собеседования на Middle/Senior Frontend-разработчика

В ролике объединены два реальных технических интервью на Frontend-позиции уровня Middle/Senior. В первом кандидат обсуждает работу браузера, CSS и React, анализирует макет в Figma с точки зрения API и сущностей данных, затем разбирает задачи на Promise, дженерики и компоненты React. Во втором интервью говорят об опыте с формами и UI kit, React, Redux/RTK, TypeScript и архитектуре компонентов.

Источник: Миша - Frontend Dev

Открыть на YouTube

Таймлайн

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

Это смонтированная запись двух технических этапов найма. В первой части интервьюер проверяет понимание загрузки страницы, CSS-позиционирования и controlled/uncontrolled-компонентов, предлагает проанализировать макет и обсудить связи сущностей, а также задачи на отложенный Promise, reconciliation React и список компонентов. После короткой вставки с результатом первого интервью начинается второй разговор: кандидат рассказывает о формах и дизайн-системе, отвечает на вопросы по React, Redux, TypeScript, иммутабельности и в конце уточняет стек, процессы и ожидания команды.

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

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

  • Структурируйте ответ о загрузке страницы: URL и кэши, DNS, сетевое соединение и HTTP-запрос, затем DOM/CSSOM, render tree, layout, paint и compositing; используемый транспорт зависит от протокола.
  • Перед реализацией макета выделяйте сущности, их связи, пользовательские действия, состояния интерфейса и API-контракты, а не только список запросов.
  • Для асинхронного helper-а используйте дженерик: возвращаемый Promise<T> должен сохранять тип переданного значения.
  • Различайте повторный рендер и remount в React: компонент сохраняет state при той же позиции, типе и key, а изменение key принудительно монтирует его заново.
  • React.memo полезен только при стабильных и сравнимых props; useCallback и useMemo стоит применять по конкретной причине, а не автоматически.
  • Селекторы Redux выбирают данные для подписанного компонента, а мемоизация помогает не пересчитывать производные значения при неизменных входных данных.
  • TypeScript не проверяет данные в рантайме: внешние ответы лучше принимать как unknown и сужать через schema-валидацию или type guard; any отключает защиту типов.
  • Не сохраняйте пароли и другие чувствительные данные в localStorage; для восстанавливаемых черновиков форм продумайте безопасное серверное хранение и контроль доступа.
  • Если элементы списка имеют много вариантов, отделяйте контейнер списка от конкретного рендеринга элементов через children, slots или render-компоненты.

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

1:22:57
FrontendMiddle

Frontend: два технических собеседования

Две записи реальных технических frontend-собеседований. В первой части проверяют HTML/CSS, JavaScript, React и TypeScript; во второй обсуждают React 18/19, рендеринг, рефакторинг компонента, дженерики, стейт-менеджеры и сборщики. Во втором разговоре кандидат уточняет детали проекта Инвитро.

46:23
FrontendSenior

Техническое собеседование frontend-разработчика: БД, CSS и лайвкодинг

Запись реального технического интервью на Frontend-вакансию уровня Middle+/Senior. Кандидат выбирает стек для файлового сервиса, проектирует структуру данных и избранное, отвечает на CSS-вопросы, выполняет небольшую UI-задачу со state management и разбирает построение дерева из плоского списка. В блице обсуждаются debounce, виртуализация, Intersection Observer, Web Workers, браузерное хранилище, обмен между вкладками и real-time-соединения.

46 мин
Frontend

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

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