NestJS: вопросы на собеседовании
Вопросы и ответы по NestJS: подготовка, примеры и типичные ошибки.
Проверьте себя по NestJS: 5 вопросов, ~10 минут
Вопросов: 41. Частые идут первыми, сложные возвращаются на повторение.
- В чём разница между контроллерами (controllers) и провайдерами (providers / services)?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- В каких backend-проектах NestJS является сильным выбором, а где лучше выбрать более простой или другой стек?Middle· спрашивают почти всегда
- Что такое dependency injection (DI) в NestJS и как он реализован?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Какова роль модулей в NestJS? Как работает система модулей?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое NestJS и каковы его основные принципы проектирования?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое декораторы (decorators) в NestJS? Приведите примеры часто используемых декораторов.Junior
- Что такое DTO (Data Transfer Objects) и как использовать
class-validatorс ними?Middle· полный разбор — Jobs/Boost - В чём разница между
forRoot()иforFeature()при регистрации модулей?Middle - Что такое Exception Filters в NestJS? Как создать глобальный exception filter?Middle· полный разбор — Jobs/Boost
- Как структурировать крупное NestJS-приложение с несколькими доменами?Senior
- Каков порядок выполнения middleware, guards, interceptors, pipes и exception filters?Senior· полный разбор — Jobs/Boost
- Как сравнить NestJS с ближайшими backend-альтернативами по скорости разработки, производительности, экосистеме и эксплуатации?Middle· полный разбор — Jobs/Boost
- Что такое модуль
@nestjs/configи как управлять переменными окружения?Middle - Как понять, что проблема в сервисе связана с NestJS, а не с базой, сетью, инфраструктурой или бизнес-логикой?Senior· полный разбор — Jobs/Boost
- Представьте, endpoint на NestJS иногда отвечает за секунды вместо миллисекунд. Как вы будете искать причину?Senior
- Что такое Guards в NestJS? Как реализовать аутентификацию и авторизацию с их помощью?Middle· полный разбор — Jobs/Boost
- Что такое Interceptors в NestJS? Приведите реальный пример использования.Middle· полный разбор — Jobs/Boost
- Как реализовать JWT-аутентификацию в NestJS с помощью Passport.js?Middle· полный разбор — Jobs/Boost
- Какие архитектурные решения NestJS задаёт вокруг request lifecycle, middleware, dependency model, validation и error handling?Middle· полный разбор — Jobs/Boost
- Как реализовать управление доступом на основе ролей (RBAC) в NestJS?Middle· полный разбор — Jobs/Boost
- Какие production-риски есть у NestJS: blocking code, connection pooling, config, auth, observability, deploy или graceful shutdown?Senior
- Проект на NestJS вырос из MVP в большой production-сервис. Какие проблемы архитектуры и сопровождения вы ожидаете увидеть?Senior· полный разбор — Jobs/Boost
- Как писать unit-тесты и e2e-тесты в NestJS с помощью Jest?Middle· полный разбор — Jobs/Boost
- Как реализовать rate limiting и заголовки безопасности в NestJS?Middle
- Как обрабатывать транзакции базы данных в NestJS с TypeORM?Senior
- Что такое Pipes в NestJS? Как использовать
ValidationPipeиParseIntPipe?Middle· полный разбор — Jobs/Boost - Что такое circular dependencies в NestJS и как их решить с помощью
forwardRef()?Senior· полный разбор — Jobs/Boost - В чём разница между scope'ами
@Injectable(): DEFAULT, REQUEST и TRANSIENT?Senior - Как реализовать кэширование в NestJS?Middle
- Чем custom provider через
useFactory,useClass,useValueотличается от обычного provider?Middle· полный разбор — Jobs/Boost - Расскажите о случае, когда вы проектировали или улучшали сервис на NestJS с учётом транзакций, безопасности, фоновых задач или мониторинга.Middle· полный разбор — Jobs/Boost
- Как работают lifecycle hooks (
onModuleInit,onApplicationShutdown) и где они нужны?Middle - Как создавать микросервисы в NestJS? Какие транспортные механизмы поддерживаются?Senior· полный разбор — Jobs/Boost
- Как добавить OpenTelemetry/tracing в NestJS и прокинуть correlation id?Senior· полный разбор — Jobs/Boost
- Что такое модуль
@nestjs/scheduleи как планировать задачи?Middle - Как настроить документацию API с помощью Swagger в NestJS?Middle· полный разбор — Jobs/Boost
- Как реализовать WebSockets в NestJS с помощью Gateways?Middle· полный разбор — Jobs/Boost
- Как NestJS интегрируется с TypeORM или Prisma? Объясните паттерн repository.Middle
- Как реализовать событийно-ориентированную архитектуру (event-driven architecture) в NestJS с использованием EventEmitter или брокеров сообщений?Senior· полный разбор — Jobs/Boost
- Что такое NestJS CLI и какие команды scaffolding наиболее полезны?Junior· полный разбор — Jobs/Boost
- Что такое модуль NestJS CQRS и когда его стоит использовать?Senior· полный разбор — Jobs/Boost