Frontend
Практическое задание: реализовать логику разблокировки кнопок после прокрутки контейнера до конца (JavaScript).
Что больше всего нравилось в текущей работе?
Как бы ты реализовал кэширование на стороне клиента?
Как связаны топики и партиции в Kafka?
Что произойдёт при ошибке в одном из запросов в for...of с await? Как обработать ошибки не останавливая цикл?
Расскажите про последнее место работы: опыт, стек, яркие моменты и проекты.
Что делает React.lazy? Что именно отвечает за выделение чанков — React.lazy или динамический импорт?
Что будет, если мы начнём двигать релизы?
Как именно можно делить бандл на чанки? В чём разница между code splitting и делением на этапе билда?
Что такое Promise в JavaScript? Расскажите про состояния промиса и методы работы с ним.
Как работает функция показа/скрытия пароля в поле input type=password?
Как можно оптимизировать рендеринг списка из 10 000 элементов без пагинации?
Что такое DOM? Как он устроен?
Как определить страну пользователя по HTTP-заголовкам?
Можно ли использовать индекс массива как key в React? Почему не рекомендуется?
Есть ли опыт с Redis?
Задача 1 У нас есть массив из 10 000 объектов (например, «Сотрудники» или «Товары»). Нам нужно реализовать компонент для выбора элемента, который не «повесит» браузер и будет удобен пользователю. Что нужно реализовать (Требования) 1. Типизация данных: Создать интерфейс Item с полями id: string, label: string и category: string. 2. Поиск (Input): При вводе текста список должен фильтроваться. 3. Работа с DOM и событиями (Keyboard Navigation): * Пользователь должен иметь возможность перемещаться по списку стрелками Up и Down. 4. При нажатии Enter выбранный элемент «подтверждается». 5. Важный нюанс: Выбранный стрелками элемент должен всегда быть в поле видимости (нужно программно скроллить контейнер, если курсор уходит за границы). 6. Оптимизация (Performance): * Поскольку данных много (10k), обсудить или реализовать простую «ленивую отрисовку» (рендерить только первые 20-30 элементов или использовать IntersectionObserver). Вывод компонента
Задача №6: что вернёт данный кусок кода (вызов стрелочной функции через оператор new)?
Классы в JavaScript — это синтаксический сахар над чем?
В резюме указана защита от race condition через AbortController. Как именно вы интегрируете отмену запросов в жизненный цикл компонента Vue? Например, если пользователь ушёл со страницы до завершения запроса, как это реализовать со сложной логикой Pinia?