СОБЕСЕДОВАНИЕ MIDDLE REACT FRONTEND || ЗП ОТ 230К
Полная запись технического интервью frontend-разработчика с практическими заданиями по JavaScript, React, TypeScript и веб-сети. Кандидат сначала описывает опыт в банковских продуктах, затем решает задачи и отвечает на уточняющие вопросы интервьюера.
- Опубликовано на YouTube:
- Просмотры на YouTube: 18,4 тыс.
- Лайки на YouTube: 469
Таймлайн
Коротко о видео
Кандидат рассказывает о примерно трёх годах 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-запросы.