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

Собеседование на Angular Frontend разработчика (Middle+/Senior)

Техническое интервью для Angular Frontend-разработчика с livecoding-задачами и подробным разбором JavaScript, Angular, веб-безопасности, CORS и рабочих практик.

Источник: Владимир Лебедев

Открыть на YouTube

Таймлайн

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

Запись технического собеседования Angular Frontend-разработчика в Промсвязьбанк: кандидат решает несколько livecoding-задач и отвечает на вопросы по JavaScript, браузеру и Angular. В практической части разбирают выбор последних k заявок из двух отсортированных массивов, Two Sum и каррирование; интервьюер уточняет граничные случаи, сложность и недопустимость мутации входных массивов. Теоретическая часть охватывает Event Loop, сетевые протоколы, хранение данных в браузере, Angular, безопасность, CORS, тестирование, code review и Git.

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

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

  • Для выборки последних k элементов из двух отсортированных массивов стоит сравнивать элементы с концов массивов и двигать индексы, а не объединять и сортировать все данные; нужно обработать исчерпание одного массива и случай k больше общего числа элементов.
  • Входные массивы в такой задаче не следует менять через pop(): повторное использование тех же данных даст другой результат. Альтернатива — копии либо отдельные индексы хвостовых элементов.
  • Для задачи Two Sum кандидат предлагает хранить уже просмотренные значения в Map и на каждой итерации искать дополнение до целевой суммы.
  • В задаче на каррирование обсуждаются замыкание, накопление аргументов между вызовами, свойство Function.length и запуск исходной функции, когда аргументов стало не меньше требуемого количества.
  • На вопросах по Event Loop важно уметь объяснить порядок синхронного кода, macrotask- и microtask-очередей; рекурсивное создание microtask может блокировать работу браузера.
  • Интервьюер отдельно исправляет смешение атрибутов cookie: Secure относится к передаче по HTTPS, а HttpOnly запрещает доступ к cookie из клиентского JavaScript.
  • По Angular проверяют жизненный цикл, Default и OnPush change detection, иерархию инжекторов, ContentChildren и причины использовать DI вместо ручного создания зависимостей; кандидат называет тестируемость и низкую связанность.

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

1 ч 40 мин
Frontend

РЕАЛЬНОЕ СОБЕСЕДОВАНИЕ С ИНТЕРЕСНЫМИ ВОПРОСАМИ И ЗАДАЧАМИ НА MIDDLE/SENIOR FRONTEND С ЗП 320К!

Реальное собеседование frontend-разработчика: практические задачи на промисы и структуры данных, затем объёмный теоретический блок по браузеру, API, безопасности и архитектуре. В конце анонимный банковский работодатель рассказывает о проекте и условиях работы.