Senior Back End Developer (Spring Boot / Microservices / Hexagonal architecture)
Profesional con experiencia mínima de 5 años en desarrollo backend Java con Spring Boot
Funciones & Tareas :
Diseñar, desarrollar y mantener microservicios backend basados en Spring Boot, aplicando principios de arquitectura hexagonal y Domain-Driven Design (DDD).
Desarrollar e integrar flujos batch complejos con Spring Batch.
Implementar y gestionar integraciones basadas en mensajería (MQ), incluyendo RabbitMQ y otros brokers corporativos.
Desarrollar rutas e integraciones con Apache Camel para orquestación de eventos y mensajes.
Diseñar soluciones orientadas a eventos (event-driven) y con enfoque distribuido.
Configurar y aplicar Spring Security para proteger servicios y APIs, gestionando autenticación y autorización (OAuth2, JWT, SSO, etc.).
Desplegar y operar servicios en Kubernetes (K8s) sobre AWS (EKS, SNS, SQS, Lambda).
Implementar plantillas dinámicas y notificaciones con Mustache.
Garantizar la calidad del código mediante Testcontainers, ArchUnit, JUnit 5 y Mockito.
Gestionar repositorios y despliegues bajo el flujo GitFlow y CI / CD.
Trabajar en entornos con alta exigencia de seguridad, resiliencia y trazabilidad, típicos del sector bancario.
Conocimientos y Experiencia Obligatorios :
Java 17+, Spring Boot, Spring Batch, Spring Cloud, Spring Security
Apache Camel, RabbitMQ, ActiveMQ u otros Message Brokers
Arquitectura Hexagonal / DDD / Clean Architecture
Microservicios y sistemas distribuidos orientados a eventos
Kubernetes, AWS (EKS, SNS, SQS, IAM, Lambda)
Mustache / Thymeleaf
MongoDB / DocumentDB
Testcontainers, ArchUnit, JUnit 5, Mockito
GitFlow, CI / CD (Jenkins, ArgoCD, GitHub Actions, etc.)
Valorable :
Experiencia previa en entornos bancarios o financieros, con conocimiento de normativa, seguridad y trazabilidad de transacciones.
Familiaridad con integraciones legacy (MQ, SOAP, mainframe, batch tradicionales).
Experiencia en observabilidad (Prometheus, Grafana, ELK).
Conocimientos de OpenAPI / Swagger y documentación técnica.
Participación en proyectos de modernización de aplicaciones bancarias.
Soft Skills :
Capacidad para trabajar en equipos multidisciplinares y entornos regulados.
Comunicación clara y proactiva con equipos técnicos y de negocio.
Mentalidad analítica, orientada a la seguridad, la eficiencia y la calidad del software.
Compromiso con la mejora continua y la automatización.