Curso 01 · Java senior + Spring en microservicios
Duración: ~12 horas. Prerrequisito: curso 00 y 2+ años escribiendo Java.
Prepara las 46 preguntas de java-microservicios/. El foco no es “saber Java”, es saber qué hace la JVM por debajo de tu código y qué hace Spring por debajo de tus anotaciones, que es exactamente donde aprieta un entrevistador senior.
Módulos
Sección titulada «Módulos»| # | Módulo | Qué te enseña | Duración |
|---|---|---|---|
| 1 | JVM: memoria, GC y qué mirar cuando duele | Estructura de memoria, G1/ZGC, tuning con datos, OOM y sus sabores | 150 min |
| 2 | Concurrencia y el Java Memory Model | happens-before, volatile/synchronized/atomics, pools, CompletableFuture, virtual threads |
180 min |
| 3 | Spring Boot por dentro y transacciones | Auto-configuración, proxies, @Transactional, JPA y el N+1 |
150 min |
| 4 | Kafka y patrones distribuidos en Java | Productor/consumidor bien configurados, outbox, saga, Resilience4j | 150 min |
| 5 | Laboratorio de diagnóstico JVM | Reproducir y diagnosticar leak, deadlock, pool agotado, GC largo | 180 min |
Al terminar deberías poder…
Sección titulada «Al terminar deberías poder…»- Leer un log de GC y decir si el problema es tamaño de heap, tasa de asignación, humongous objects o promoción.
- Explicar por qué un
HashMapcompartido puede colgar un servicio y qué usar en su lugar. - Contar qué pasa exactamente cuando llamas a un método
@Transactionaldesde otro método de la misma clase. - Configurar un consumidor de Kafka que no pierda ni duplique sin decir “exactly-once”.
- Sacar un thread dump y un heap dump en producción y explicarlos.
Herramientas que debes tener instaladas
Sección titulada «Herramientas que debes tener instaladas»sdk install java 21.0.3-tem # o 17; conoce las diferencias# incluidas en el JDK: jcmd, jstack, jmap, jstat, jfr, jhsdb# externas imprescindibles:# async-profiler → perfilado de CPU/alloc sin safepoint bias# Eclipse MAT → análisis de heap dumps# JDK Mission Control → lectura de grabaciones JFRdocker run -d -p 9092:9092 apache/kafka:3.7.0 # para el módulo 4