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 estructurales, creacionales y de comportamiento, para resolver problemas comunes de diseño y facilitar el mantenimiento y la escalabilidad del software.
* Experiencia en Angular y React.
* Conocimiento deseable en arquitecturas Front Angular y 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 en seguridad, incluyendo 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 REST, gRPC, colas de mensajes y 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 la comprensió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.
* Gestión de proyectos: comprensión de metodologías ágiles y capacidad para trabajar efectivamente en marcos ágiles para el desarrollo iterativo de software.
Tecnologías necesarias:
* Spring Boot
* Spring Batch + Spring Integration
* Gradle
* Clean / Hexagonal + DDD
* OpenAPI, AsyncAPI
* JMolecules / ArchUnit
Tecnologías deseables:
* Kubernetes
* Spring Modulith
* Spring Cloud
* Micrometer
* Persistence
* Multi-Framework (MicroProfile, Quarkus)
* Templates (Mustache, Yeoman, ...)
Idiomas
* Inglés (nivel B2)
OFRECEMOS:
* Contrato en modalidad Freelance a tiempo completo.
* Oferta económica: hasta 350€ por jornada + IVA (según experiencia aportada).
* Proyecto de larga duración con recurrencia en proyectos anteriores.
* Localización: España (remoto 100%).
#J-18808-Ljbffr