Приходилось ли писать бэкенд
Что проверяют
Две вещи сразу. Насколько вы понимаете систему за пределами браузера и не станет ли для вас сюрпризом, что на этой позиции придётся иногда чинить серверную часть. Иногда за вопросом стоит попытка закрыть фулстек-задачи фронтенд-вакансией, и это стоит выяснить.
Как отвечать
Отвечайте фактами, а не самооценкой. Что считается опытом и про что стоит рассказать:
- слой для фронтенда: свой прокси или BFF, который собирает несколько вызовов в один ответ;
- серверная часть фреймворка: обработчики маршрутов, серверный рендер, серверные действия;
- интеграции: приём вебхуков, работа с очередью, отправка почты;
- инструменты разработки: мок-сервер, скрипты сборки и выката.
Дальше покажите, что понимаете границы. Скажите, где заканчивается ваша уверенность: писали ли вы миграции схемы, разбирались ли с транзакциями и блокировками, приходилось ли думать про идемпотентность повторного запроса. Признанная граница звучит сильнее, чем обещание разобраться с чем угодно.
Если опыта нет, отвечайте через смежное: контракты API и их версионирование, коды ответов и обработка ошибок, авторизация по токену и почему его безопаснее держать в куке с флагом HttpOnly, заголовки кэширования, пагинация вместо выгрузки всего списка.
И задайте встречный вопрос: какая доля серверных задач ожидается на роли, есть ли в команде бэкендеры, кто отвечает за контракт. Ответ многое скажет о вакансии.
Где спотыкаются
Преувеличивают. Пара учебных проектов превращается в «писал бэкенд», и на первом же уточнении про индексы или транзакции ответ разваливается. Честное «поднимал сервис для своих задач, прод вели другие» надёжнее.
Отвечают односложным «нет» и замолкают. Вопрос про кругозор, а не про строчку в резюме. Даже без своего сервера вы обсуждаете контракты с бэкендерами, и об этом есть что рассказать.
Не уточняют, зачем спрашивают. Кандидат соглашается быть фулстеком, а через месяц половина времени уходит на чужой код, который некому ревьюить, и спрашивают с него всё равно за фронтенд.