Вернуться в видеотекуГод опыта | Собеседование frontend | ЛАЙВ КОДИНГ
Техническое frontend-собеседование с лайв-кодингом по JavaScript, Promise, Git и TypeScript. Кандидат решает задачи, получает подсказки и итоговый фидбек по подготовке.
- Направление
- Frontend
- Формат
- Мок-собеседование
- Грейд
- Junior
- Длительность
- 57 мин
Коротко о видео
Запись технического frontend-собеседования с кандидатом Ильёй, который сообщает о годе с лишним коммерческой разработки на Angular и опыте с React. В лайв-кодинге разбирают реализацию фильтра, мини-библиотеки ожиданий с методами toBe/notToBe и работу с Promise: последовательные запросы, Promise.all, Promise.allSettled и обработку ошибок. В финале обсуждают Git, TypeScript-дженерики, чистые функции и дают рекомендации по подготовке к интервью.
Затронутые темы
Что взять на заметку
- Перед написанием кода на собеседовании стоит вслух разложить решение: алгоритм, структуру данных и причины выбора подхода; интервьюер отдельно отмечает это как важный критерий.
- В задаче на фильтрацию нужно вернуть новый массив и учитывать контракт callback: он может работать не только с элементом, но и с его индексом.
- Для аналога expect методы toBe и notToBe размещают в объекте, возвращаемом обёрткой; при несовпадении ожидается выброс Error, а общую проверку и сообщение можно вынести в переиспользуемую функцию.
- Promise.all подходит, когда нужны успешные результаты всех промисов; при отказе одного из них общий промис отклоняется, поэтому await Promise.all должен находиться внутри try/catch.
- Promise.allSettled позволяет получить статусы и результаты всех промисов, включая отклонённые, а затем отдельно обработать fulfilled и rejected элементы.
- Нужно повторить Git-операции squash, amend, rebase, merge и cherry-pick, а также различие между сохранением и переписыванием истории.
- Для теоретической части полезно уметь объяснить назначение дженериков и свойства чистой функции: отсутствие побочных эффектов, детерминированность и неизменение входных данных.