Как проходит онбординг разработчиков
Что проверяют
Чаще этот вопрос задаёт кандидат, и ответ многое говорит о зрелости инженерной культуры. Мидлу или сеньору интервьюер может задать его в обратную сторону: «Как бы вы ввели в проект нового Node.js-разработчика?» Тогда проверяют, умеете ли вы передавать знания и снижать порог входа.
Как отвечать
Нормальный онбординг бэкенд-разработчика на Node.js держится на воспроизводимом окружении и быстром первом изменении:
- запуск проекта: версия Node зафиксирована в
.nvmrcили полеengines, зависимости ставятся черезnpm ciпо lock-файлу, база, Redis и брокер поднимаются черезdocker compose, пример переменных лежит в.env.example; - README: новичок запускает сервис и тесты за час без помощи коллеги. Если не получается, это первая задача онбординга;
- карта кода: фреймворк (NestJS, Fastify, Express), слои, где миграции, как устроены очереди и фоновые задачи;
- правила: ESLint и Prettier, соглашения по коммитам, что проверяет CI, как проходит код-ревью и кто может вливать изменения;
- первая задача: небольшой баг или эндпоинт с тестом, доведённый до прода за первую неделю или две;
- наставник: один конкретный человек и регулярные встречи до конца испытательного срока.
Если рассказываете, как проходили онбординг сами, приведите свои сроки: когда запустили проект, когда влили первый PR. Если сами вводили новичков, расскажите, что улучшили, например перевели локальную среду на Docker Compose или добавили сид тестовых данных.
Работодателю задайте вопросы: сколько времени новичок обычно тратит до первого PR, есть ли выделенный наставник, на какой версии Node живёт прод. Если там версия без поддержки, например Node 18 или 20, стоит спросить, есть ли план обновления.
Где спотыкаются
Описывают онбординг как неделю чтения документации. Хороший ответ ориентирован на то, как быстро человек доходит до первого изменения в проде.
Считают нормой, что проект собирается только на машине одного сеньора. Это технический долг, и сказать об этом стоит спокойно.
Не спрашивают про версию Node и состояние зависимостей, а потом первые месяцы уходят на обновление пакетов с уязвимостями вместо задач продукта.