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

Из питониста во фронтендеры: собеседуем джуниора с бэкенд-опытом. Микротаски, промисы и лайвкодинг

Публичное учебное frontend-интервью с бэкенд-разработчиком, который переходит с Python во frontend. Теория о браузере и React сочетается с подробным лайвкодингом и финальной обратной связью.

Источник: Hexlet

Открыть на YouTube

Таймлайн

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

Учебное публичное собеседование: бэкенд-разработчик Дмитрий Дёмин с опытом Python готовится перейти во frontend, а Ирина Чигринова задаёт вопросы и по ходу объясняет ожидания интервьюера. Они разбирают мотивацию смены направления, браузерный рендеринг, производительность, event loop, React и хуки, затем решают три лайвкодинг-задачи: ограничение повторов символов, порядок промисов и треугольник Паскаля. В финале интервьюер высказывает мнение, что кандидату стоит пробоваться на junior-позиции, но это учебная обратная связь, а не результат реального найма.

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

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

  • Для вопросов о браузере подготовьте связное объяснение пути HTML → DOM, CSS → CSSOM/render tree → layout → paint, а также различий между обычными script, defer и async.
  • При разборе лагов связывайте 60 FPS с короткими задачами в главном потоке: тяжёлые вычисления дробят на части или выносят в Web Worker, чтобы не блокировать интерфейс.
  • Для анимаций избегайте свойств, вызывающих layout/reflow, включая width, height и margin; изменения DOM и измерения размеров могут быть дорогими.
  • В React нужно уверенно различать state как внутреннее состояние компонента и props как внешние входные данные, а также помнить, что изменение ref само по себе не вызывает ререндер.
  • Хуки должны вызываться в одинаковом порядке на каждом рендере, поэтому useEffect нельзя помещать в условные ветки; зависимости эффекта определяют его повторный запуск.
  • На лайвкодинге сначала уточняйте условие, проговаривайте ход мысли и спрашивайте о забытом API; в задаче на ограничение повторов достаточно счётчика в объекте и результирующего массива/строки.
  • Для асинхронных задач повторите Promise.all и очереди задач, а для треугольника Паскаля — построение каждой строки из соседних элементов предыдущей строки с единицами по краям.

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

50 мин
Frontend

НЕУДАЧНОЕ СОБЕСЕДОВАНИЕ на FRONTEND РАЗРАБОТЧИКА. Live coding

Разбор неудачного для автора фронтенд-собеседования с live coding и вопросами по JavaScript, React и TypeScript. Во второй части собеседники рассказывают о монорепозитории, Context/RxJS, собственном UI kit и миграции проектов на Next.js.

1 ч 54 мин
FrontendMiddle

СОБЕСЕДОВАНИЕ Middle FRONTEND разработчика | JavaScript REACT TYPESCRIPT

Запись учебного собеседования Middle frontend-разработчика по JavaScript, TypeScript и React с разбором ответов и практических задач. Включает объяснения интервьюера по Event Loop, оптимизации, состоянию React и функциональному программированию.

1 ч 28 мин
Frontend

РЕАЛЬНОЕ СОБЕСЕДОВАНИЕ С КУЧЕЙ ЗАДАЧ НА MIDDLE/SENIOR FRONTEND РАЗРАБОТЧИКА! ЗП ДО 300К

Реальное frontend-собеседование с задачами по JavaScript и React, вопросами по архитектуре и обсуждением проекта ВТБ. В конце автор рассказывает о положительном фидбеке и своём отказе от предложения.