Interviewfragen zu NestJS (Middle) mit Antworten

75 Fragen fürs Vorstellungsgespräch zu NestJS (Middle) mit richtigen Antworten, Erklärungen und Links zur Dokumentation.

Diesen Test machen
  1. 1.In welcher Reihenfolge laufen die Verarbeitungsschichten einer Anfrage in Nest?
  2. 2.Warum sollte Authentifizierung ein Guard statt Middleware sein?
  3. 3.Wofür nutzt man ExecutionContext?
  4. 4.Wie liest ein Rollen-Guard die an einer Route deklarierten Rollen?
  5. 5.Wie registriert man einen globalen Guard, der andere Provider injizieren kann?
  6. 6.Was liefert intercept(context, next) eines Interceptors?
  7. 7.Wie kann ein Interceptor jede Antwort in { data: ... } einhüllen?
  8. 8.Wie kann ein Interceptor langsamen Handlern ein Timeout geben?
  9. 9.Wie schreibt man einen eigenen Parameter-Decorator wie @User()?
  10. 10.Wie kombiniert man mehrere Decorators zu einem, etwa Guards plus Swagger-Annotationen?
  11. 11.Wann nutzt man useFactory für einen Provider?
  12. 12.Wofür ist useExisting da?
  13. 13.Warum eine interface-artige Abhängigkeit per Token statt per Klasse injizieren?
  14. 14.Was ist ein dynamisches Modul?
  15. 15.Was ist die übliche Konvention für forRoot, register und forFeature?
  16. 16.Was sind die drei Injection Scopes in Nest?
  17. 17.Was ist ein Nebeneffekt, wenn man einen Provider request-scoped macht?
  18. 18.Wie löst man eine zirkuläre Abhängigkeit zwischen zwei Providern auf?
  19. 19.Was erlaubt ModuleRef?
  20. 20.Welcher Lifecycle-Hook ist der richtige Ort, um eine Verbindung zu öffnen, auf die andere Module beim Start angewiesen sind?
  21. 21.Wie validiert man verschachtelte Objekte in einem DTO?
  22. 22.Was ist das Risiko, Datenbank-Entitäten direkt als Request-DTOs zu nutzen?
  23. 23.Wie kann eine eigene Validierungsregel etwas Asynchrones prüfen, etwa „E-Mail ist nicht vergeben“?
  24. 24.Warum schreibt man eventuell eine eigene Pipe, statt ValidationPipe zu nutzen?
  25. 25.Was erlaubt @Expose({ groups: ['admin'] }) mit ClassSerializerInterceptor?
  26. 26.Wie schreibt man einen globalen Filter, der alle Fehler als RFC-9457-Problem-Details formatiert?
  27. 27.Wo sollten Datenbankfehler wie Eindeutigkeitsverletzungen in HTTP-Fehler übersetzt werden?
  28. 28.Warum können sich Exception Filter in Microservices und HTTP unterschiedlich verhalten?
  29. 29.Wie fügt sich Passport in die Authentifizierung von Nest ein?
  30. 30.Wie setzt man Berechtigungsregeln feiner als Rollen um, etwa „Nutzer dürfen nur eigene Posts bearbeiten“?
  31. 31.Warum zusätzlich zur Authentifizierung den Besitz von Objekten prüfen?
  32. 32.Wie führt man in Nest mehrere TypeORM-Operationen in einer Transaktion aus?
  33. 33.Warum ist synchronize: true in TypeORM in Produktion gefährlich?
  34. 34.Was ist ein sauberer Weg, Details von Prisma oder TypeORM aus der Geschäftslogik herauszuhalten?
  35. 35.Wie cacht man GET-Antworten in Nest?
  36. 36.Wie verschiebt man langsame Arbeit wie E-Mail-Versand in Nest in eine Hintergrund-Queue?
  37. 37.Was bietet @nestjs/event-emitter?
  38. 38.Wie schickt man in Nest Live-Updates über HTTP an den Browser?
  39. 39.Was ist ein WebSocket-Gateway in Nest?
  40. 40.Was ist der Unterschied zwischen Unit- und E2E-Tests in einem Nest-Projekt?
  41. 41.Warum im E2E-Test dieselben globalen Pipes und Filter wie in main.ts anwenden?
  42. 42.Wie ersetzt man in einem Test einen Guard, um einen angemeldeten Nutzer zu simulieren?
  43. 43.Warum ist es nützlich, Repository-Code gegen eine echte Datenbank in Docker zu testen?
  44. 44.Was ist der Unterschied zwischen @MessagePattern und @EventPattern in Nest-Microservices?
  45. 45.Welche Transporte unterstützen Nest-Microservices von Haus aus?
  46. 46.Was ist eine hybride Anwendung in Nest?
  47. 47.Was ist der Unterschied zwischen Code-First- und Schema-First-GraphQL in Nest?
  48. 48.Was macht @ResolveField() in einem GraphQL-Resolver?
  49. 49.Wie validiert man Umgebungsvariablen beim Start mit @nestjs/config?
  50. 50.Wie ordnet man Konfiguration in typisierte Namensräume?
  51. 51.Welche Strategien zur API-Versionierung unterstützt Nest?
  52. 52.Was macht das CLI-Plugin von @nestjs/swagger?
  53. 53.Warum wechselt man eine Nest-App eventuell von Express zu Fastify?
  54. 54.Welches Problem kann ein „Shared Module“ verursachen, das alles exportiert?
  55. 55.Wofür nutzt man ein Nest-Monorepo (Workspace)?
  56. 56.Was ist eine Standalone-Nest-Anwendung?
  57. 57.Wie liest man die aktuelle Request-ID in tiefen Services, ohne sie durch jeden Aufruf zu reichen?
  58. 58.Wie aktiviert man für Nest in Kubernetes ein sauberes Herunterfahren mit Health Checks?
  59. 59.Was kann in configure(consumer) gebundene Middleware NICHT sehen?
  60. 60.Wie nimmt man einige Routen von einer Middleware aus?
  61. 61.Was bietet @nestjs/cqrs?
  62. 62.Wie komprimiert man Antworten in Nest?
  63. 63.Woran erkennt man, dass ein Nest-Controller zu viel tut?
  64. 64.Wie setzt man Sicherheits-Header in einer Nest-App?
  65. 65.Was bietet @nestjs/schedule außer @Cron?
  66. 66.Wie loggt man in Nest jede Anfrage mit Timing?
  67. 67.Warum lehnt ValidationPipe unbekannte Query-Parameter standardmäßig eventuell nicht ab?
  68. 68.Was braucht @Controller({ path: 'users', version: '2' }), um zu funktionieren?
  69. 69.Wozu dient nest build mit webpack oder SWC in Produktion?
  70. 70.Nach dem Upgrade auf NestJS 11 (Express 5) passt eine Route @Get('files/*') nicht mehr wie früher. Warum?
  71. 71.Warum liefert der Standardspeicher des Throttlers bei mehreren App-Instanzen falsche Grenzen?
  72. 72.Welche eingebaute Pipe lehnt einen Routenparameter ab, der keine gültige UUID ist?
  73. 73.Wann sind verzögert geladene Module (LazyModuleLoader) nützlich?
  74. 74.Interceptors sind global, am Controller und an einer Route gebunden. In welcher Reihenfolge läuft ihre „Danach“-Logik?
  75. 75.Was macht @Optional() an einem Konstruktorparameter?