Preparación por profesión

Entrevista de Desarrollador Java: preguntas y respuestas.

Servicios JVM, concurrencia y sistemas transaccionales.

Preguntas

Preguntas técnicas para practicar en voz alta

  1. 01

    ¿Cómo funciona HashMap de Java internamente?

    HashMap transforma la clave en un bucket, resuelve colisiones con lista o árbol y redimensiona al superar el umbral de carga; equals y hashCode correctos son obligatorios.

    Leer el desglose completo
  2. 02

    ¿Cómo funciona @Transactional de Spring?

    @Transactional suele aplicarse mediante un proxy de Spring que abre, confirma o revierte una transacción alrededor de una llamada interceptada; la auto-invocación evita el proxy y los defaults de rollback importan.

    Leer el desglose completo
  3. 03

    ¿Cómo haces thread-safe un código Java?

    La seguridad entre hilos exige proteger invariantes compartidos mediante inmutabilidad, confinamiento, atómicos, locks o colecciones concurrentes; importan visibilidad y operaciones compuestas.

    Leer el desglose completo
  4. 04

    ¿Cómo afecta el garbage collection de Java a una aplicación?

    El GC de Java recupera objetos no alcanzables desde roots; tasa de asignación, heap, vida de objetos y collector afectan throughput y pausas, por lo que se ajusta usando logs y objetivos de latencia.

    Leer el desglose completo
  5. 05

    ¿Cuándo debes usar streams de Java?

    Streams expresan transformaciones con operaciones intermedias perezosas y una operación terminal; úsalos para pipelines claros y sin estado, no para lógica cargada de efectos ni paralelismo automático.

    Leer el desglose completo
  6. 06

    ¿Cómo proteges una aplicación Spring?

    Protege aplicaciones Spring con autenticación explícita, autorización de mínimo privilegio en requests y métodos, CSRF cuando autentican cookies, hashing seguro, validación y eventos auditados.

    Leer el desglose completo
  7. 07

    ¿Cómo funciona la autoconfiguración de Spring Boot?

    La autoconfiguración de Spring Boot registra beans condicionalmente según classpath, propiedades y beans existentes; los beans del usuario suelen sustituir defaults y el informe de condiciones explica las decisiones.

    Leer el desglose completo
  8. 08

    ¿Cómo evitas consultas N+1 en JPA?

    N+1 ocurre cuando una consulta carga padres y el acceso lazy lanza una consulta por cada uno; resuélvelo con fetch join, entity graph, batch fetching o una proyección adecuada.

    Leer el desglose completo
  9. 09

    ¿Cómo diagnosticas problemas de rendimiento en Java?

    Diagnostica rendimiento Java con evidencia: correlaciona métricas y trazas, revisa GC y estados de hilos, captura JFR o async-profiler, corrige el cuello medido y repite la misma carga.

    Leer el desglose completo
  10. 10

    ¿Cómo diseñas el manejo de excepciones en Java?

    Usa excepciones para fallos excepcionales, conserva causas, expón errores de dominio en límites, evita tragarlos con catch-all y traduce una vez a respuesta API o decisión de reintento.

    Leer el desglose completo