Вернуться в видеотекуПРОВАЛИЛ СОБЕС. Frontend ЗП 180к. REACT LIVE CODING
Запись frontend-собеседования с вопросами по JavaScript, TypeScript, React и Next.js. Включает две live-coding задачи: таймер с `useEffect` и рекурсивный вывод дерева данных.
- Направление
- Frontend
- Формат
- Техническое собеседование
- Длительность
- 35 мин
Коротко о видео
Автор показывает своё первое frontend-собеседование после длительного перерыва и честно отмечает, что часть неудачных ответов вырезана, а в ролике оставлены объяснения интервьюера. Техническая часть охватывает JavaScript и TypeScript, хранение данных в браузере, React live coding, хуки, Next.js и SSR. В live-coding кандидат переписывает компонент с таймером на функциональный и разбирает очистку интервала, затем получает задачу на рекурсивный рендер дерева по `id` и `parentId`.
Затронутые темы
Что взять на заметку
- Для вопросов об асинхронности стоит уметь объяснить неблокирование основного потока браузера на примере отзывчивого UI во время сетевого запроса.
- Нужно уверенно различать обычные и стрелочные функции: у стрелочной нет собственного `this` и её нельзя вызвать как конструктор через `new`.
- Подготовьте сравнение `sessionStorage`, `localStorage`, IndexedDB и cookie: срок жизни, область действия, объём и то, что cookie отправляются с HTTP-запросами.
- Повторите TypeScript utility types `Partial`, `Omit` и `Record`, а также различие `any` и `unknown`: `unknown` требует сузить тип перед использованием.
- В React-задачах проверяют не только переписывание класса на функцию, но и корректный `useEffect`: интервал должен очищаться функцией cleanup, возвращаемой из эффекта.
- Полезно потренировать рекурсивный рендер произвольной иерархии: находить детей по `parentId`, строить вложенные списки и поддерживать несколько корневых элементов.
- Для Next.js/SSR нужно объяснить серверный рендер HTML, последующую гидратацию на клиенте и необходимость совпадения серверной и клиентской разметки.