Frontend
Как сам оцениваешь свои навыки фронтенд-разработчика на React?
Что такое классовые и функциональные компоненты в React? Чем они отличаются?
Какой жизненный цикл у компонента? Какие методы жизненного цикла знаешь, умеешь и применяешь?
Что такое состояние компонента?
Как обновить состояние компонента?
В чём разница между состоянием (state) и пропсами (props)?
Можем ли мы в дочернем компоненте поменять пропсы?
Что такое обработка событий в React? Что такое синтетический ивент?
Что такое event loop (ивент-луп)?
Можем ли мы приоритизировать события внутри event loop? Как реализован буфер событий, который обрабатывает event loop? Что такое микротаски и макротаски, приведи примеры?
Умеешь ли работать самостоятельно — взять задачу и довести её до конца?
Какую работу ищешь? Что не устроило на прошлом месте работы?
Реализуйте компонент для вывода списка команд с участниками. Приходит массив команд (с названием и списком user ID участников) и отдельный массив пользователей (с ID и именем). Нужно сопоставить команды с пользователями по user ID и вывести карточки команд с перечислением участников. Если участников нет — выводить 'нет участников', если user ID есть, но пользователь не найден в списке — выводить прочерк. Особенность: user ID может приходить в виде массива, числа, null или undefined.
Есть идея, как избежать вложенного перебора (O(n²)) при поиске пользователей по ID? Как можно оптимизировать поиск?
Чем бы помог TypeScript в данной задаче? Как можно нормализовать user ID, чтобы упростить проверки?
Представь, что этот код нужно заливать в продакшн и он попал тебе на code review. Какие комментарии ты бы оставил?
Можно ли избежать вложенности лишнего div в шаблоне? Например, использовать template вместо div для обёртки при итерации.
Блокирует ли CSS рендеринг страницы?
Какие HTTP-коды ответов вы знаете?
С помощью каких хуков мы можем хранить локальное состояние в React?