BUSCAMOS :
Arquitecto de Software (Full Stack)
Profesional con experiencia contrastada desempeñando el rol de Arquitecto de Software.
Conocimientos y habilidades técnicas fundamentales
- Spring Framework. Dominio en Spring Core, con un enfoque particular en Spring Batch para la ejecución de trabajos batch de gran volumen, Spring Integration para la integración de sistemas y el flujo de mensajes, Spring Security para la autenticación y autorización, y Spring Scheduler para la ejecución de tareas programadas.
- Arquitectura Limpia (Clean Architecture). Comprensión profunda de los principios de Clean Architecture para diseñar sistemas desacoplados y mantenibles, incluyendo la separación de intereses, desarrollo dirigido por el dominio (DDD), y la implementación de casos de uso interactivos.
- Microservicios. Conocimiento en el diseño y la implementación de arquitecturas basadas en microservicios, incluyendo estrategias de comunicación entre servicios (síncronas y asíncronas), gestión de API, y patrones para descomponer aplicaciones monolíticas.
- Patrones de diseño de software. Experiencia en la implementación de patrones de diseño de software, incluyendo patrones estructurales, creacionales y de comportamiento, para resolver problemas comunes de diseño y facilitar el mantenimiento y la escalabilidad del software.
- Experiencia en Angular, React.
- Conocimiento deseable en arquitecturas Front Angular, React.
Habilidades de desarrollo y metodologías
Desarrollo dirigido por pruebas (TDD). Habilidad para emplear TDD para garantizar la calidad del código y facilitar refactorizaciones con confianza.Integración y entrega continua (CI / CD). Experiencia con herramientas de CI / CD para automatizar la prueba, integración y despliegue de aplicaciones.Gestión de contenedores y orquestación. Conocimiento en Docker, Kubernetes u otras herramientas de orquestación, para la gestión eficiente de microservicios en entornos de producción.Capacidades adicionales
Bases de datos y almacenamiento de datos. Experiencia con sistemas de bases de datos relacionales y no relacionales, así como la implementación de estrategias de almacenamiento y acceso a datos eficientes y escalables.Seguridad de aplicaciones. Comprensión de las mejores prácticas y patrones en seguridad de las aplicaciones, incluyendo la seguridad en el diseño de microservicios y la implementación de autenticación y autorización a nivel de servicio.Comunicaciones síncronas y asíncronas. Habilidades en la implementación de comunicaciones síncronas (REST, gRPC) y asíncronas (colas de mensajes, eventos) entre microservicios.Competencias interpersonales y de gestión
Comunicación efectiva. Habilidad para comunicar conceptos técnicos complejos a personas no técnicas, facilitando una comprensión común y la toma de decisiones basada en información técnica.Liderazgo técnico. Capacidad para guiar y mentorizar a equipos de desarrollo, promoviendo mejores prácticas y un alto estándar de calidad en el trabajo.Gestión de proyectos. Comprensión de metodologías ágiles y la capacidad de trabajar efectivamente dentro de marcos ágiles para el desarrollo iterativo de software.Tecnologías necesarias :
Spring BootSpring Batch + Spring IntegrationGradleClean / Hexagonal + DDDOpenAPI, AsyncAPIJMolecules / ArchUnitTecnologías deseables :
KubernetesSpring ModulithSpring CloudMicrometerPersistenceMulti-Framework (MicroProfile, Quarkus)Templates (Mustache, Yeoman, ...)Idiomas
Inglés (nivel B2)OFRECEMOS :
Contrato en modalidad Freelance Full timeOferta económica : hasta 350€ jornada + IVA (según experiencia aportada)Proyecto de larga duración. Recurrencia en proyectosLocalización : España (Remoto 100%)
#J-18808-Ljbffr