Загрузка…
Загрузка…
frontend / middle / tech_deep
Формат
online
Стадия
tech_deep
Когда
within_quarter
Длительность
—
01
Поведенческий
Расскажите, на каких проектах приходилось участвовать и какие технологии там использовались.
Кандидат рассказал про Центробанк, Сберсервис и Росбанк (TypeScript, Ant Design, Redux)
02
Поведенческий
На проектах это был монолит? Использовались ли микрофронтенды?
Follow-up к рассказу о проектах; микрофронты были только в Росбанке
03
Теория
На чём строились микрофронтенды — на Webpack или какое-то своё решение?
Ответ: Webpack Module Federation
04
Поведенческий
Что использовали для обработки форм на проекте Росбанка — свои решения или существующие библиотеки?
Заметки
Транскрипт видео-собеседования (формат диалога) на React-разработчика от сообщества Criminal IT. Название нанимающей компании не озвучено. Прошлый опыт кандидата: Центробанк, Сберсервис (Сбер), Росбанк — банковские внутренние системы, микрофронтенды на Webpack Module Federation в Росбанке. Темы: JavaScript, TypeScript, HTML/CSS, React, react-router, Next.js, качество кода, тестирование, безопасность. Лайвкодинга не было — только теоретические вопросы и вопросы по опыту. По итогам интервьюер составит фидбэк и передаст HR.
Стиль интервьюера
Доброжелательный диалоговый формат: интервьюер идёт от простых вопросов к более сложным, подсказывает и «доводит» кандидата наводящими вопросами, сам даёт правильные ответы, если кандидат не вспомнил (второй аргумент React.memo, key во фрагментах, nth-last-child). Активно использует follow-up'ы и вопросы по реальному опыту кандидата.
Кастомные компоненты на основе Ant Design
05
Поведенческий
Что использовали с Redux в качестве middleware — redux-thunk, redux-saga и т.д.?
Использовались и saga, и thunk
06
Теория
Чем отличается Map (new Map) от обычного объекта в JavaScript? Какие есть особенности?
Интервьюер обозначил начало как «детские» вопросы
07
Теория
Что такое Event Loop? Расскажите, как работает асинхронность в JavaScript (стек вызовов, куча, очередь колбэков).
08
Теория
Что такое каррирование функций?
09
Теория
Какие хранилища существуют в браузере (клиентский JavaScript) и в чём их отличия?
Обсуждались cookies, localStorage, sessionStorage
10
Теория
Что-нибудь слышал про IndexedDB? Что это за хранилище?
Follow-up к вопросу о хранилищах браузера
11
Теория
В чём различия между type и interface в TypeScript?
12
Теория
В чём разница между типами any и unknown в TypeScript?
13
Поведенческий
Был ли опыт работы с RTK Query?
Уточняющий вопрос по ходу обсуждения any/unknown; в работе опыта не было
14
Теория
Что нового TypeScript привносит со стороны ООП (классов) по сравнению с JavaScript?
Кандидат затруднился, интервьюер задал прямые вопросы про абстрактные классы и модификаторы доступа
15
Теория
Что такое абстрактный класс в TypeScript?
16
Поведенческий
Встречался ли MobX на проектах в качестве хранилища состояния?
Опыта с MobX не было
17
Теория
Чем отличается приватный метод (private) от защищённого (protected) в TypeScript?
18
Теория
Что значит статичный (static) метод?
Кандидат ответил неуверенно
19
Теория
Что такое utility types в TypeScript? Какие использовал в проектах?
Обсуждались Pick, Omit, Record, Partial, Readonly
20
Теория
Что можешь рассказать про декларации и пространства имён в TypeScript (файлы d.ts)? Как их используешь?
21
Поведенческий
Приходилось ли собирать свой пакет общих компонентов/утилитарных функций? Декларации типов генерировал автоматически или описывал вручную?
Follow-up к теме деклараций; кандидат описывал вручную
22
Теория
Что такое декораторы в TypeScript? Писал ли свои, использовал ли готовые?
Интервьюер уточнил: декораторы изменяют или дополняют поведение?
23
Теория
Что такое Shadow DOM? Чем он отличается от обычного DOM?
24
Теория
Пробовал ли отрисовать React-приложение (вызвать рендер) внутрь закрытого Shadow DOM? Какие особенности там возникнут?
Follow-up: связан с изоляцией вёрстки в микрофронтендах
25
Теория
Какой подход к вёрстке на CSS предпочитаешь — флексы, гриды, флоаты?
26
Теория
Задача: есть div, внутри которого больше 100 параграфов. Как стилизовать каждый четвёртый параграф с конца?
Решение: nth-child с отрицательным аргументом -n-4 либо nth-last-child с положительным; интервьюер уточнял «каждый четвёртый или просто четвёртый?»
27
Теория
Что по поводу медиазапросов? Приходилось ли верстать под телефоны, планшеты?
28
Теория
Какие CSS-препроцессоры использовал, с чем сталкивался на проектах?
29
Теория
Какие методологии по неймингу классов и идентификаторов применял (например, БЭМ)?
Кандидат рассказал про БЭМ и модульный CSS
30
Теория
PostCSS используете на проектах, например, чтобы поддержать старые браузеры?
31
Теория
Что такое виртуальный DOM в React? Как он работает?
32
Теория
Как в виртуальном DOM работает портал React (createPortal)? В чём особенности?
Интервьюер охарактеризовал вопрос как лёгкий
33
Теория
В чём особенности отрисовки списка, состоящего из фрагментов React (React.Fragment)?
34
Теория
Какое обязательное требование предъявляет React при отрисовке списков?
Follow-up; речь про атрибут key
35
Теория
Можно ли использовать короткую запись фрагмента (<></>) при отрисовке списков? Почему?
Follow-up; нельзя, т.к. в короткой записи нельзя добавить key
36
Теория
Что можно сказать про разделение кода и lazy loading в React? Что происходит с чанками и бандлами при его использовании?
37
Поведенческий
С какой версией React впервые столкнулся? Застал ли компоненты React на классах?
38
Теория
Какой единственный кейс существует сейчас, когда приходится прибегать к классовым компонентам React, и с чем это связано?
Ответ: Error Boundary, метод componentDidCatch
39
Теория
Как в функциональных компонентах реализовать жизненный цикл классовых компонентов? Чем его заменили?
40
Теория
В чём разница между хуками useEffect и useLayoutEffect?
41
Теория
Что можешь рассказать про мемоизацию в React (React.memo, useMemo)?
Интервьюер упомянул, что в React 19 от этого планируют отказаться
42
Теория
В React.memo есть второй необязательный аргумент. Что это за аргумент и для чего он нужен?
Кандидат не вспомнил; ответ: колбэк для ручного сравнения пропсов
43
Поведенческий
С какими менеджерами состояния сталкивался помимо Redux?
Только Redux
44
Теория
Использовался ли React Context для управления общим состоянием?
45
Теория
Что обычно использовали для маршрутизации в SPA-приложениях?
Ответ: react-router
46
Теория
С какими версиями react-router приходилось работать и в чём разница между пятой и шестой версиями?
47
Теория
Чем отличается nesting (вложенность) маршрутизации в пятой и шестой версиях react-router? Какие изменения произошли в путях?
Follow-up; кандидат не смог корректно ответить
48
Теория
Как построена маршрутизация в Next.js и чем она отличается от react-router?
Ответ: файловая маршрутизация — «как папку назовёшь, так маршрут и будет называться»
49
Теория
В чём отличие серверных компонентов от клиентских при использовании SSR? В чём вообще цель SSR?
50
Поведенческий
Сколько лет работаешь с React?
Почти четыре года