Lenguaje y rendimiento
Java 21, con especial foco en:
Virtual Threads para optimización de rendimiento y concurrencia.
Buen entendimiento del impacto en escalabilidad y consumo de recursos.
Arquitectura y patrones
Experiencia sólida en Microservicios, incluyendo:
Diseño, desarrollo y mantenimiento de servicios independientes.
Comunicación síncrona y asíncrona.
Arquitectura Hexagonal (Ports & Adapters):
Separación clara de dominio, aplicación e infraestructura.
DDD (Domain-Driven Design):
Modelado del dominio.
Uso correcto de agregados, entidades y value objects.
CQRS:
Separación de modelos de lectura y escritura.
Comprensión de cuándo y por qué aplicarlo.
APIs y contratos
Enfoque API First:
Definición de contratos antes de la implementación.
Uso de especificaciones claras y alineadas con frontend y otros consumidores.
Resiliencia y estabilidad
Implementación de patrones de resiliencia:
Circuit Breaker
Retries
Conciencia de fallos en sistemas distribuidos y diseño orientado a tolerancia a errores.
Asincronía y mensajería
Experiencia con Kafka:
Procesamiento asíncrono de eventos.
Comunicación desacoplada entre microservicios.
Comprensión de tópicos, consumidores, productores y escalabilidad.
Persistencia
MongoDB:
Modelado de datos orientado a documentos.
Optimización de consultas y estructuras según el dominio.
Conocimientos en Frontend
React con experiencia en:
Arquitecturas de Microfrontends.
Integración con APIs definidas bajo enfoque API First.
Capacidad para entender el impacto de decisiones frontend en backend y viceversa.