Plan de estudio Java 2026
Java 8 → 25 Spring Boot 3.x SQL & NoSQL Docker · Kubernetes AWS · Azure · GCP IA / GenAI Virtual threads

De Java a producción en la nube, en 3 semanas o 1 mes

Material completo, autocontenido y sin conexión: 13 módulos con teoría condensada, código listo para ejecutar, errores típicos, checklists de repaso, preguntas de entrevista y un proyecto final integrador. Diseñado para alguien que ya programa y quiere ponerse al día con el stack Java empresarial actual (Java 17/21, Spring Boot 3, contenedores, cloud, observabilidad e IA).

13
módulos
28
días de plan
120+
tareas guiadas
100%
offline
Tu progreso global (se guarda en este navegador) 0 / 0 (0%)

Has marcado 0 tareas de 0 registradas. El total crece a medida que visitas cada módulo, porque cada página aporta sus propias tareas.

Cómo usar este material

Reglas de oro

  1. 70% teclado, 30% lectura. Cada concepto se fija escribiendo código, no leyendo sobre él.
  2. Un proyecto que crece contigo. Todo lo que aprendes se añade al proyecto final (módulo 13); no hagas 20 demos sueltas.
  3. Explícalo en voz alta. Si no puedes explicar @Transactional o un índice B-tree en 60 segundos, no lo sabes todavía.
  4. Repaso espaciado. Al inicio de cada día, 10 minutos repasando las checklists del día anterior.
  5. Marca las tareas. Las casillas se guardan solas; la barra de arriba te dice cuánto llevas.

Dos ritmos posibles

RitmoDuraciónHoras/díaQué se recorta
Intensivo3 semanas (21 días)6–8 hNada: se juntan los días marcados como “fusionable” y se estudia también el fin de semana.
Sostenible4 semanas (1 mes)3–4 hNada: 5 días por semana + 1 día de repaso y proyecto.
Mínimo viable10 días6 hSolo módulos 01, 02, 04, 05, 06, 09 y 12 (los marcados crítico).

Atajo de teclado: pulsa / para buscar cualquier tema desde cualquier página.

Entorno de trabajo (haz esto hoy, antes del día 1)

Plan día a día

Cada día tiene un objetivo único y verificable. Marca la casilla solo cuando hayas escrito el código, no cuando hayas leído la teoría.

Semana 1 · Java moderno de verdad

Módulos 01–03 Objetivo: escribir Java 21 idiomático y razonar sobre memoria y concurrencia
Progreso de la semana0 / 0
Día 1
Fundamentos y POO con criterio · Módulo 01

Tipos, String pool e inmutabilidad, equals/hashCode, interfaces vs clases abstractas, composición sobre herencia, SOLID aplicado a código real.

Día 2
Colecciones, complejidad y Streams · Módulo 01

ArrayList vs LinkedList, HashMap por dentro, TreeMap, Comparator; Streams, Collectors, Optional sin abusar.

Día 3
JVM, memoria y recolección de basura · Módulo 01

Heap/stack/metaspace, ciclo de vida de un objeto, G1 vs ZGC, fugas de memoria, lectura de un OutOfMemoryError, flags esenciales y contenedores.

Día 4
Java 11 y 17: lo que cambió tu forma de escribir · Módulo 02

var, HttpClient, API de String, records, sealed interfaces, switch con patrones, text blocks, instanceof con patrón.

Día 5
Java 21 y migración · Módulo 02

Pattern matching para records, sequenced collections, SequencedMap, novedades 22–25 que ya se usan, y la ruta real de migración Java 8 → 17/21 (javax → jakarta).

Día 6
Concurrencia clásica + virtual threads · Módulo 03

ExecutorService, CompletableFuture, synchronized vs Lock, colecciones concurrentes, volatile y happens-before; virtual threads y concurrencia estructurada.

Día 7
Repaso activo + kata fusionable

Sin material delante: reescribir de memoria los ejemplos clave y resolver 2 katas (procesar CSV con streams; caché LRU con LinkedHashMap).

Semana 2 · Spring Boot, datos y tests

Módulos 04–07 Objetivo: una API REST con persistencia real, transacciones y tests de integración
Progreso de la semana0 / 0
Día 8
Spring Core: IoC, DI y ciclo de vida · Módulo 04

Contenedor, beans, scopes, inyección por constructor, @Configuration, autoconfiguración de Boot, @ConditionalOn…, arranque explicado paso a paso.

Día 9
API REST profesional · Módulo 04

Diseño de recursos, validación con Bean Validation, manejo global de errores con ProblemDetail (RFC 9457), paginación, versionado, OpenAPI, perfiles y Actuator.

Día 10
SQL en serio · Módulo 06

Modelado y normalización, joins, agregados, funciones de ventana, CTEs, índices, EXPLAIN ANALYZE, transacciones y niveles de aislamiento en PostgreSQL.

Día 11
Spring Data JPA e Hibernate · Módulo 05

Entidades y relaciones, lazy vs eager, el problema N+1, @EntityGraph, DTO projections, cerrojos optimistas, caché de primer nivel, Flyway.

Día 12
Transacciones y concurrencia de datos · Módulo 05

@Transactional de verdad: propagación, readOnly, rollback, autoinvocación que no funciona, pérdidas de actualización, @Version, idempotencia.

Día 13
Testing y calidad · Módulo 07

JUnit 5, Mockito sin abusar, @SpringBootTest vs slices, MockMvc/WebTestClient, Testcontainers, datos de prueba, cobertura útil y test de mutación.

Día 14
Repaso + refactor del proyecto fusionable

Aplicar arquitectura por capas/hexagonal al proyecto, revisar nombres, quitar lógica de los controladores y dejar la suite verde.

Semana 3 · Sistemas distribuidos y contenedores

Módulos 08–09 Objetivo: dos servicios comunicándose por Kafka, empaquetados y desplegados en Kubernetes
Progreso de la semana0 / 0
Día 15
Arquitectura: monolito modular, DDD y microservicios · Módulo 08

Cuándo NO usar microservicios, límites de contexto, arquitectura hexagonal, contratos, API gateway, service discovery, config centralizada.

Día 16
Comunicación entre servicios y resiliencia · Módulo 08

REST vs mensajería vs gRPC, timeouts y reintentos con jitter, circuit breaker, bulkhead, rate limiting, degradación elegante, idempotencia.

Día 17
Kafka y eventos · Módulo 08

Topics, particiones, claves, consumer groups, offsets, entrega at-least-once, orden, DLQ, patrón outbox, saga vs 2PC, event-driven sin perder datos.

Día 18
Docker y empaquetado de aplicaciones Java · Módulo 09

Imágenes multi-stage, capas y caché, JVM en contenedores (memoria y CPU), usuario no root, distroless, Jib, docker compose para el entorno local.

Día 19
Kubernetes esencial · Módulo 09

Pods, Deployments, Services, Ingress, ConfigMaps y Secrets, probes, requests/limits, HPA, rolling updates y rollback; depuración con kubectl.

Día 20
Observabilidad y CI/CD · Módulos 08–09

Logs estructurados con correlación, métricas RED/USE, trazas distribuidas con OpenTelemetry, alertas y SLO; pipeline de GitHub Actions con tests, escaneo y publicación de imagen.

Día 21
Repaso + prueba de carga fusionable

Medir antes de optimizar: k6 o JMeter contra tu API, encontrar el cuello de botella (¿pool de conexiones? ¿N+1? ¿GC?) y documentar la mejora.

Semana 4 · Cloud, seguridad, IA y entrevistas

Módulos 10–13 Objetivo: app segura en la nube, temas de actualidad y entrevista preparada
Progreso de la semana0 / 0
Día 22
Cloud para desarrolladores Java · Módulo 09

Modelos IaaS/PaaS/CaaS/FaaS, equivalencias AWS ↔ Azure ↔ GCP, cómputo, almacenamiento, bases gestionadas, colas, IAM, redes básicas, coste y regiones.

Día 23
Serverless, IaC y 12-Factor · Módulo 09

Lambda con Java (cold start, SnapStart), S3 y colas, Terraform básico, secretos gestionados, configuración por entorno, aplicaciones sin estado.

Día 24
Seguridad de aplicaciones · Módulo 10

Spring Security 6: filtros, autenticación, autorización por método, JWT vs sesión, OAuth2/OIDC con Keycloak, CORS y CSRF, hashing de contraseñas, gestión de secretos.

Día 25
Temas de actualidad: IA, GraalVM, nuevas prácticas · Módulo 11

Spring AI, RAG con vector store, MCP, uso responsable de asistentes de código, GraalVM native image, CDS/AppCDS, Kotlin y Quarkus/Micronaut en el panorama actual.

Día 26
Entrevista técnica: preguntas y código · Módulo 12

120 preguntas con respuesta modelo, cómo estructurar una respuesta en 90 segundos, live coding sin pánico, preguntas de comportamiento con método STAR.

Día 27
System design y trade-offs · Módulo 12

Plantilla de diseño en 45 minutos, cálculo de capacidad, caché, particionado, consistencia, colas, CAP en la práctica; tres diseños resueltos.

Día 28
Cierre: proyecto, README y portfolio · Módulo 13

Documentar el proyecto como si fuera de empresa: README con arquitectura, decisiones (ADR), instrucciones de arranque, diagrama, demo y plan de mejoras.

Los 13 módulos

Cada módulo es autónomo: teoría breve, código comentado, errores frecuentes, checklist y preguntas de entrevista.

MÓDULO 01

Java Core y POO

Tipos, inmutabilidad, colecciones, streams, excepciones, genéricos, JVM, memoria y GC.

crítico6 h
MÓDULO 02

Java 8 → 25 (11 · 17 · 21 LTS)

Qué aporta cada versión, records, sealed, pattern matching, y cómo migrar sin dolor.

crítico5 h
MÓDULO 03

Concurrencia y virtual threads

Executors, CompletableFuture, modelo de memoria, Loom y concurrencia estructurada.

muy preguntado4 h
MÓDULO 04

Spring Framework y Spring Boot 3

IoC/DI, autoconfiguración, REST, validación, errores, perfiles, Actuator y métricas.

crítico8 h
MÓDULO 05

Spring Data JPA e Hibernate

Entidades, relaciones, N+1, proyecciones, transacciones, bloqueos y Flyway.

crítico7 h
MÓDULO 06

Bases de datos y SQL

Modelado, joins, ventanas, índices, planes de ejecución, aislamiento, NoSQL y Redis.

crítico8 h
MÓDULO 07

Testing y calidad

JUnit 5, Mockito, slices de Spring, Testcontainers, cobertura, mutación y contratos.

muy valorado5 h
MÓDULO 08

Microservicios y arquitectura

DDD, hexagonal, gateway, resiliencia, Kafka, saga/outbox, CQRS y observabilidad.

crítico9 h
MÓDULO 09

Docker, Kubernetes y cloud

Imágenes, compose, K8s, CI/CD, AWS/Azure/GCP, serverless, Terraform y 12-Factor.

crítico9 h
MÓDULO 10

Seguridad de aplicaciones

Spring Security 6, JWT, OAuth2/OIDC, OWASP Top 10, secretos y cadena de suministro.

muy preguntado5 h
MÓDULO 11

Actualidad 2026

Spring AI, RAG, MCP, GraalVM nativo, plataformas alternativas y tendencias reales.

diferencial5 h
MÓDULO 12

Entrevistas técnicas

120 preguntas con respuesta, katas de código, system design y preguntas de conducta.

crítico6 h
MÓDULO 13

Recursos y proyecto final

Documentación oficial, libros, canales, y el proyecto integrador paso a paso.

2 h

Mapa mental del stack

                        ┌──────────────────────────────┐
                        │      Java (11 / 17 / 21)      │  ← módulos 01·02·03
                        │  lenguaje · JVM · memoria     │
                        └───────────────┬──────────────┘
                                        │
                ┌───────────────────────┼────────────────────────┐
                ▼                       ▼                        ▼
      ┌──────────────────┐   ┌────────────────────┐   ┌────────────────────┐
      │  Spring Boot 3   │   │   Persistencia     │   │      Testing       │
      │ IoC · REST · AOP │   │ JPA · SQL · Redis  │   │ JUnit5 · TC · PIT  │
      │   módulo 04      │   │   módulos 05·06    │   │     módulo 07      │
      └────────┬─────────┘   └─────────┬──────────┘   └─────────┬──────────┘
               └───────────────┬───────┴────────────────────────┘
                               ▼
                 ┌───────────────────────────────┐
                 │  Arquitectura distribuida     │  ← módulo 08
                 │ DDD · Kafka · resiliencia     │
                 │ observabilidad · saga/outbox  │
                 └───────────────┬───────────────┘
                                 ▼
                 ┌───────────────────────────────┐
                 │  Entrega y operación          │  ← módulo 09
                 │ Docker · K8s · CI/CD · Cloud  │
                 └───────────────┬───────────────┘
                                 ▼
              ┌────────────────────────────────────────┐
              │ Seguridad (10) · Actualidad/IA (11)    │
              │        Entrevistas (12) · Proyecto (13)│
              └────────────────────────────────────────┘

Lee el mapa de arriba abajo: sin el lenguaje no hay framework, sin persistencia no hay negocio, sin tests no hay entrega, y sin operación no hay producción. Las entrevistas preguntan de todas las capas.

Autoevaluación inicial (5 minutos)

Marca lo que ya dominas. Lo que quede sin marcar es exactamente por donde debes empezar.

0–4 marcas: sigue el plan completo de 4 semanas. 5–8: haz el intensivo de 3 semanas saltando lo que dominas. 9–12: ve directo a los módulos 08, 09, 11 y 12.

Empieza aquí: abre el Módulo 01 · Java Core y trabaja el Día 1. Si tu entrevista es en pocos días, ve antes al Módulo 12 para saber qué te van a preguntar y estudiar con hambre.