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

СОБЕСЕДОВАНИЕ MIDDLE REACT FRONTEND || ЗП ОТ 230К

Полная запись технического интервью frontend-разработчика с практическими заданиями по JavaScript, React, TypeScript и веб-сети. Кандидат сначала описывает опыт в банковских продуктах, затем решает задачи и отвечает на уточняющие вопросы интервьюера.

Источник: Карен Даниелян

Открыть на YouTube

Таймлайн

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

Кандидат рассказывает о примерно трёх годах frontend-разработки, работе с React и TypeScript, задачах в банковском продукте — от фильтрации и выгрузки транзакций до кредитного калькулятора и интеграции с «Госуслугами». Затем проходит техническое интервью с live-coding: JavaScript, функции и контекст, массивы, Event Loop, Promise API, React, TypeScript generics, HTTP/HTTPS и CORS. Интервьюер уточняет и корректирует отдельные ответы, а в конце обещает передать кандидату фидбек; решения по найму в записи нет.

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

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

  • Для самопрезентации полезно подготовить конкретные продуктовые задачи: кандидат описывает фильтрацию транзакций, экспорт, кредитный калькулятор, повторно используемые модули и интеграцию с «Госуслугами»; рост конверсии он называет своим наблюдаемым результатом.
  • Нужно уверенно разбирать выводы JavaScript: `typeof null`, сравнение `NaN`, `==` и `===`, а также то, что `&&` и `||` возвращают операнды — из-за этого при условном рендеринге React на экране может появиться `0`.
  • Стоит повторить hoisting, Temporal Dead Zone для `let`/`const`, различия Function Declaration и Function Expression, лексический `this` стрелочных функций, отсутствие у них `arguments`, а также `call`, `apply` и `bind`.
  • По массивам спрашивали мутацию методов, результаты `map`, `forEach`, `reduce` и `push`, отличие `slice` от `splice`, а также разворачивание массива неизвестной вложенности рекурсией или `flat(Infinity)`.
  • Нужно уметь объяснить порядок синхронного кода, microtasks и macrotasks в Event Loop, назначение `Promise.all` и `Promise.allSettled`, а также различие параллельного и последовательного запуска запросов.
  • В React проверялись Error Boundary в классовых компонентах, иммутабельное обновление состояния, отказ от индексов как `key` для изменяемых списков, зависимости и cleanup в `useEffect`, отмена запроса через `AbortController`, семантичная разметка и разделение несвязанных эффектов.
  • Для сетевой части нужно различать HTTP и HTTPS, GET и POST, кэширование GET-запросов, cache busting через параметр URL, CORS и preflight-запросы.

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