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

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

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

Источник: Миша - Frontend Dev

Открыть на YouTube

Таймлайн

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

Запись реального технического собеседования на позицию Middle+/Senior Frontend с указанной вилкой около 320 тыс. рублей. Кандидат решает две практические задачи — обёртку для асинхронной функции с лимитом времени и стек с O(1)-получением минимума — затем отвечает на вопросы по JavaScript, браузеру, веб-безопасности, API и паттернам. В финале интервьюеры описывают анонимный банковский проект на Angular и микрофронтендах; после собеседования кандидат сообщает о положительном фидбеке и предложении пройти проверку службы безопасности, но отказывается из-за использования ненастоящего имени.

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

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

  • Для обёртки асинхронной функции с тайм-аутом кандидат с подсказками приходит к `Promise.race`: нужно вернуть новый промис, который завершится результатом исходной функции либо ошибкой тайм-аута. Такая обёртка не отменяет физическое выполнение произвольной уже запущенной async-функции.
  • Стек с `getMin()` за O(1) требует вспомогательного стека/истории минимумов: при `push` сохраняют новый минимум, а при `pop` синхронно удаляют его из истории.
  • Для корректной обработки одинаковых минимальных значений в истории минимумов нужно использовать сравнение «меньше либо равно», иначе после удаления одного из дублей минимум станет неверным.
  • При объяснении Event Loop важно разделять синхронный код, очередь микрозадач и макрозадачи: после выполнения макрозадачи браузер очищает микрозадачи до перехода к следующей макрозадаче.
  • Для анимаций кандидат связывает производительность с этапами rendering pipeline: изменения размеров, позиции и структуры вызывают reflow/layout, цвета — repaint, а `transform` обычно затрагивает compositing.
  • На собеседовании проверяют не только React или Angular: обсуждаются загрузка HTML/CSS/скриптов, `async` и `defer`, storage, cookies, CORS, XSS/CSRF/CSP, REST, GraphQL, HTTP/2, паттерны и SOLID.
  • По словам интервьюеров, для перехода React-разработчика на Angular на проекте предусмотрено время на адаптацию; важнее фундаментальная база, чем знание конкретного фреймворка.

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