Node.js / NestJS

Node.js / NestJS

BACKEND

Desarrollo backend con el runtime de Node.js y el framework NestJS orientado a TypeScript. Arquitectura modular con decoradores, inyección de dependencias y soporte completo de TypeScript para construir APIs REST, GraphQL y microservicios enterprise-grade altamente mantenibles.

Lo que aprenderás

Framework NestJS con arquitectura modular y decoradores (@Controller, @Injectable)

TypeScript estricto con tipos avanzados e inferencia automática

Dependency Injection nativa con contenedor IoC y scopes

Controllers, Providers, Modules para organización clara del código

Guards para autenticación, Pipes para validación, Interceptors para transformación

TypeORM o Prisma para ORM con migraciones y relaciones complejas

Passport.js integrado para estrategias de auth (JWT, OAuth2, local)

GraphQL con enfoque code-first o schema-first

Microservicios con capas de transporte (TCP, Redis, gRPC, MQTT)

Testing completo (Jest, E2E, unit tests, mocking, coverage)

Temas clave a dominar

Los conceptos más importantes para entender esta tecnología y aprobar tus entrevistas

1

Node.js: Event Loop, I/O no bloqueante, async/await, streams, buffers

2

Arquitectura NestJS: modules, controllers, providers, decoradores

3

Dependency Injection: providers, scopes (DEFAULT, REQUEST, TRANSIENT), custom providers

4

Controllers y routing: @Get, @Post, @Param, @Body, @Query, parámetros de ruta

5

Providers y services: lógica de negocio, repository pattern, service layer

6

Middleware, Guards, Interceptors, Pipes, ExceptionFilters (ciclo de vida del request)

7

Validación con class-validator y class-transformer (validación de DTOs)

8

TypeORM: entities, relaciones (@OneToMany, @ManyToOne), repositories, QueryBuilder

9

Prisma: schema, migraciones, client, relaciones, transacciones

10

Autenticación: Passport.js, estrategia JWT, guards, control de acceso basado en roles

11

Configuración: ConfigModule, variables de entorno, validación

12

Manejo de excepciones: HttpException, excepciones personalizadas, filters

13

Testing: unit tests con Jest, tests E2E, mocking, test doubles

14

GraphQL: resolvers, schemas, mutations, subscriptions, DataLoader

15

Microservicios: patrones (request-response, basado en eventos), transporters

16

Performance: caching (Redis), compresión, rate limiting, profiling

17

Logging (Winston, Pino), monitoreo, Docker, despliegue