Técnico Superior en Desarrollo de Aplicaciones Multiplataforma
Progresa Centro de Formación Profesional CIEEP

Software EngineerJava Backend · Spring · Oracle · Legacy Modernization
Más de cinco años modernizando y manteniendo aplicaciones Java críticas en producción. Diagnostico incidencias complejas, diseño el cambio mínimo necesario y evoluciono sistemas legacy sin comprometer su estabilidad.
Software Engineer especializado en backend Java, mantenimiento evolutivo y modernización de aplicaciones empresariales, con más de cinco años trabajando sobre sistemas en producción dentro del ecosistema Java.
Mi trabajo se centra en comprender aplicaciones existentes, localizar incidencias con precisión, desarrollar nuevas funcionalidades y modernizar progresivamente sistemas legacy sin comprometer su estabilidad.
He trabajado con Java, Spring Framework, Spring Security, Hibernate/JPA, Oracle, Maven y Tomcat, además de tecnologías complementarias de frontend e integración.
Priorizo soluciones mantenibles sobre soluciones vistosas: reutilizo la arquitectura existente antes de introducir nuevas abstracciones y evito complejidad que no resuelve un problema real.
Software Engineer
Evolución y mantenimiento del backend Java de aplicaciones de gestión y trazabilidad. Lideré la migración de Java 8/Tomcat 8 a Java 11/Tomcat 9, mejorando el rendimiento. Diseñé mecanismos de seguridad con Spring Security, auditoría con Hibernate Envers y generación documental desacoplada del dominio. Implementé la integración con servicios blockchain mediante smart contracts y colaboré con equipos NestJS/Angular.
Software Engineer
Evolución y mantenimiento de aplicaciones Java empresariales, integrándolas con otros sistemas. Participé en la migración de una web WordPress a Magnolia CMS. Asumí en solitario el mantenimiento y la evolución de una aplicación legacy en Java 6.
Software Engineer
Mantenimiento correctivo y evolutivo de aplicaciones empresariales: investigación de incidencias, desarrollo de nuevas funcionalidades con Java 8/Spring 4 y JavaScript (jQuery), y resolución de problemas de integración entre sistemas.
Software Engineer
Desarrollo de dos aplicaciones para el procesamiento y la escritura de archivos derivados de la secuenciación de ADN, con cliente web en Angular 11 para lectura y visualización de datos en tiempo real.
Técnico Superior en Desarrollo de Aplicaciones Multiplataforma
Progresa Centro de Formación Profesional CIEEP
Hitos representativos de mi trayectoria.
Cuando recibo una funcionalidad o una incidencia, intento no empezar directamente a escribir código.
Entender el problema real y qué partes del sistema están implicadas antes de tocar código.
Diseñar el cambio mínimo necesario, reutilizando lo existente y separando responsabilidades cuando aporta valor.
Probar el comportamiento normal y los casos límite, y mejorar solo lo que realmente lo necesita.
El cambio llega a producción sin comprometer la estabilidad del sistema.
Entender antes de cambiar
Sé trabajar con software que ya existe: entender aplicaciones escritas por otras personas, localizar el origen de un problema y cambiar solo lo que realmente lo necesita.
Me resultan especialmente interesantes problemas del tipo:
Esto funciona casi siempre, pero falla en determinadas situaciones
Tenemos un sistema antiguo y necesitamos añadir esta funcionalidad sin romper lo existente
Esta parte del código se ha vuelto difícil de mantener
No sabemos exactamente dónde se origina esta incidencia
Esta consulta funciona, pero empieza a tener problemas cuando aumenta el volumen de información
Necesitamos modernizar esta aplicación, pero no podemos reescribirla desde cero
Necesitamos integrar este sistema con otro sin acoplarlos por completo
Áreas en las que sigo creciendo activamente:
Aporto más valor en proyectos de backend Java: mantenimiento evolutivo, modernización de aplicaciones legacy y resolución de problemas complejos.
Cuéntame en pocas líneas en qué consiste el proyecto o el puesto y te respondo por correo.