Frontend Собеседование. Вопросы + Лайвкодинг. Моковое собеседование
Моковое собеседование по frontend-разработке с вопросами по CSS, JavaScript и React, а также двумя практическими заданиями. В финале кандидат проектирует hook для получения данных с сервера и обработки загрузки и ошибок.
Это моковое frontend-собеседование для начинающего разработчика: интервьюер последовательно спрашивает о CSS, JavaScript и React, а кандидат отвечает и уточняет отдельные неточности. В CSS обсуждаются overflow, box-sizing, семантика, Flexbox/Grid, специфичность и скрытие элементов; в JavaScript — области видимости, функции, массивы и объекты. Во второй половине кандидат решает задачу на сумму массива и проектирует custom hook для загрузки данных с состояниями data, loading и error.
Для CSS повторить поведение overflow, различие content-box и border-box, семантические HTML-теги, оси Flexbox и двухмерную модель Grid.
Нужно уверенно объяснять каскад и специфичность CSS: при равной специфичности применяется более позднее правило; inline-стили имеют более высокий приоритет.
Подготовить различия между display: none и visibility: hidden: первый убирает элемент из потока, второй сохраняет занимаемое место.
В JavaScript стоит отработать let, const и var, блочную/функциональную области видимости, hoisting function declaration и применение анонимных функций как callback.
Для массивов полезно различать map, filter, find, some, every и splice; отдельно уметь написать сумму элементов через reduce и обычный цикл.
По React нужно знать useEffect, useRef, Context, жизненный цикл функциональных компонентов, controlled/uncontrolled inputs и причины использования ref для чтения значения без рендера на каждый ввод.
При проектировании custom hook для запроса важно возвращать согласованные состояния data, isLoading и error, сбрасывать старую ошибку/данные перед новым запросом и выключать загрузку независимо от успеха запроса.