Подготовка к интервью

Вопросы на собеседовании в Альфа-Банк

1058 вопросов с собеседований в Альфа-Банк

1058 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

Подборка объединяет вопросы, отмеченные на этапах интервью в Альфа-Банк. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: devops, infrastructure, database.

Каталог

Результаты поиска

Найдено: 1058
Поведенческий

Бандл был 1.5 мегабайта, стал 700-800 килобайт. Как именно уменьшили бандл? Как бы ты сейчас начала оптимизировать бандл размером 2 мегабайта?

Начните с анализа production-бандла и единой методики измерения, затем уменьшайте самые дорогие зависимости и код первоначальной загрузки.

Читать ответ
Теория

Как предотвратить race condition при повторных асинхронных запросах из useEffect? Какие нативные средства JavaScript позволяют отменять запросы?

В cleanup отменяйте запрос AbortController и запрещайте старому запуску обновлять состояние через флаг или номер поколения.

Читать ответ
Поведенческий

Как именно улучшили перформанс тяжёлых страниц? Что именно тормозило рендер? Как измеряли — с 5 секунд до 150-250 миллисекунд?

Такое ускорение нужно объяснять профилем узкого места и сопоставимыми замерами до и после, а не общей фразой об оптимизации.

Читать ответ
Теория

Какие потенциальные недостатки и проблемы есть у реализации groupBy, возвращающей объект?

У объекта ключи приводятся к строкам или символам, поэтому разные исходные значения могут слиться в одну группу; обычный {} также наследует свойства прототипа.

Читать ответ
Лайвкодинг

Реализуйте generic-тип StateObject<T>, который преобразует исходный объектный тип в объект со свойством value, содержащим readonly-версию T, и методом update(key, value), типобезопасно обновляющим значение указанного свойства.

Свяжите ключ и значение generic-параметром K extends keyof T, а свойство value опишите через Readonly<T>.

Читать ответ
Лайвкодинг

Реализуйте React-хук useIsFirstRender, который возвращает true при первом рендере компонента и false при всех последующих.

Безопасно различать начальный рендер и состояние после монтирования через state, переключая флаг в эффекте; это создаст один дополнительный рендер.

Читать ответ