Собеседование frontend-разработчика Middle/Senior
Запись технического собеседования frontend-разработчика на вакансию Middle/Senior с вилкой 250–300 тыс. руб. Кандидат отвечает на вопросы по JavaScript, TypeScript, React и веб-платформе, а также решает задачи в онлайн-редакторе.
Миша - Frontend Dev
Открыть на YouTube- Опубликовано на YouTube:
- Просмотры на YouTube: 4,9 тыс.
- Лайки на YouTube: 104
Таймлайн
Коротко о видео
После короткого вступления проходит технический этап: кандидат обсуждает CI/CD, сборку Webpack, оптимизацию и безопасность веб-приложений, CORS, HTTP/2, рендеринг браузера и event loop. В лайв-кодинге разбираются анаграммы, каррирование, уникализация объектов, типизация функций и enum в TypeScript, а также useEffect, мемоизация и ререндеры в React. В конце кандидат задаёт вопросы, затем обсуждается дальнейшее взаимодействие.
Затронутые темы
Что взять на заметку
- Проверка анаграмм через сортировку имеет сложность O(n log n), а подсчёт частот символов — O(n).
- Для удаления повторов объектов по id удобно хранить уже встреченные идентификаторы в Set: решение остаётся линейным по числу элементов.
- useEffect с пустым массивом зависимостей замыкает состояние начального рендера; для счётчика подходит функциональная форма обновления state и очистка интервала.
- useCallback стабилизирует ссылку на функцию, а useMemo мемоизирует результат вычисления; их стоит применять при реальной необходимости.
- Для функции, объединяющей объекты, дженерики и пересечение типов позволяют сохранить свойства обоих аргументов.