Это учебное публичное собеседование на позицию middle frontend-разработчика: Лена Рашкован задаёт Тимуру Гафиулину вопросы и практические задачи по вёрстке, JavaScript и React. Кандидат делает кастомный checkbox, разбирает CSS-позиционирование, пишет функцию доступа к значению во вложенном объекте и анализирует учебное React-приложение с лайками. В финале интервьюер отмечает уверенное практическое владение базовыми темами, но называет зонами роста внутреннее устройство React, оптимизацию и более системную работу с краевыми случаями.
Для кастомного checkbox полезно сохранить нативный input для семантики и связать его с label; видимую галочку можно показывать по состоянию checked.
При absolute-позиционировании важно явно задать контекст позиционирования родителю; альтернативы для раскладки и центрирования включают Flexbox, а Grid кандидат не использовал.
В задаче обхода вложенного объекта нужно последовательно брать очередной ключ из пути и отдельно обрабатывать отсутствие ключа, пустой путь и другие невалидные входные данные.
Function declaration поднимается (hoisting), а function expression нельзя безопасно вызвать до присваивания; обсуждение также затрагивает область видимости и замыкания.
В React нельзя использовать индекс массива как key для изменяемого списка: при вставках, удалениях или перестановках это ведёт к неверному сопоставлению элементов.
Новая функция-обработчик, созданная при каждом рендере, меняет ссылку в props и может вызывать лишние ререндеры; для оптимизации обсуждаются перенос обработчика, React.memo и мемоизация.
Оценка интервьюера — её профессиональное мнение: практическая база кандидата заметна, но понимание механизмов React и подходов к оптимизации пока неполное.