Madrid, Comunidad de Madrid, Spain
8 hours ago
Arquitecto de Software (Híbrido)

Descripción de la empresa

Devoteam es una consultora europea líder enfocada en estrategia digital, plataformas
tecnológicas, ciberseguridad y transformación empresarial a través de la tecnología.
Centrada en 6 áreas de especialización, abordamos los desafíos estratégicos de nuestros
clientes: Digital Business & Products, Data-driven Intelligence, Distributed Cloud, Business
Automation, Ciberseguridad y la Sostenibilidad conseguida por la Digitalización.

La Tecnología está en nuestro ADN y creemos en ella como una palanca capaz de impulsar
el cambio para mejorar, manteniendo un equilibrio que nos permite ofrecer a nuestros
clientes herramientas tecnológicas de primer nivel pero siempre con la cercanía y
profesionalidad de un equipo que actúa como guía durante el camino.

Nuestros 25 años de experiencia nos convierten en una consultora innovadora,
consolidada y madura que permite el desarrollo de nuestras 8.500 personas, certificando
continuamente a nuestros consultores en las últimas tecnologías y contando con expertos
en: Cloud, BI, Data Analytics, Excelencia en Procesos de Negocio, Gestión de la Relación
con clientes, Ciberseguridad, Marketing Digital, Machine Learning, Ingeniería y desarrollo
del Software.
Devoteam ha sido premiado como Partner del año 2021 de los 5 líderes de la nube: AWS,
Google Cloud, Microsoft, Salesforce y ServiceNow.

#CreativeTechForBetterChange

Descripción del empleo

Buscamos un arquitecto de software con una sólida base técnica y experiencia demostrable en la construcción de sistemas distribuidos a gran escala. El candidato ideal debe poseer un profundo entendimiento de la arquitectura de microservicios y ser capaz de diseñar soluciones robustas y escalables, fundamentando sus decisiones con un enfoque pragmático y orientado a resultados.

Se trata de una posición estable en modalidad híbrida (2 - 3 días en oficina) en la zona de Chamartín.

Requisitos

Arquitectura y Plataformas:

Kubernetes (K8s) [Obligatorio]: Experiencia avanzada en el diseño, implementación y gestión de arquitecturas en clústeres de Kubernetes. Es crucial el conocimiento de las diferencias entre entornos de nube públicos (AWS, Azure, GCP) y privados/on-premise. Debe ser capaz de gestionar servicios tanto internos (ClusterIP) como externos (NodePort, LoadBalancer, Ingress).

Gestión de Tráfico y Conectividad [Valorable]: Experiencia práctica con herramientas de control de tráfico y seguridad como Ingress y Service Mesh. Se valora especialmente el conocimiento de Istio o alternativas similares, comprendiendo la gestión de la comunicación tanto a nivel de APIs públicas como de la comunicación segura entre pods (comunicación intra-cluster communication).

Sistemas Distribuidos [Obligatorio]: Sólida experiencia en el diseño y la implementación de sistemas distribuidos. Es fundamental el entendimiento de patrones de diseño como el SAGA, así como los desafíos inherentes a la consistencia de datos, la tolerancia a fallos y la comunicación asíncrona.

Orquestación de Procesos (BPM) [Valorable]: Experiencia práctica con motores de orquestación de procesos de negocio. Se requiere experiencia específica con jBPM o el más moderno Kogito. Se valorará el conocimiento de otros enfoques como la Arquitectura Orientada a Servicios (SOA).

Lenguaje y Frameworks:

Java [Obligatorio]: Dominio del lenguaje Java, con experiencia demostrada en versiones Java 11 y 17 o superiores.

Frameworks de Microservicios [Obligatorio]: Profundo conocimiento de al menos uno de los frameworks modernos para la creación de microservicios. Se requiere experiencia con Spring Boot o Quarkus, comprendiendo las diferencias de rendimiento y los casos de uso óptimos para cada uno.

Programación [Obligatorio]: Entendimiento claro de la diferencia y las implicaciones de la programación imperativa frente a la programación reactiva en el contexto de sistemas distribuidos.

Otros Lenguajes [Valorable]: Se valorará experiencia en otros lenguajes y frameworks, especialmente python con FastAPI y NodeJs. 

DevOps y Observabilidad:

Contenerización [Obligatorio]: Sólidos conocimientos de Docker para la creación y gestión de imágenes de contenedores.

Infraestructura como Código (IaC) [Valorable]: Conocimientos sólidos de herramientas de IaC como Terraform. El arquitecto debe ser capaz de diseñar la estrategia de despliegue y guiar a los equipos de DevOps.

Ciclo de Vida del Software (CI/CD) [Valorable]: Profundo conocimiento de los principios de CI/CD y DevSecOps. El rol implica la coordinación de los equipos de desarrollo y operaciones para definir y custodiar los procesos y pipelines, garantizando la seguridad, calidad e integridad del software.

Observabilidad y Monitorización [Valorable]: Experiencia en la implementación de soluciones de observabilidad para sistemas distribuidos. Se requiere conocimiento de herramientas de monitorización (p. ej., Prometheus, Grafana), de logging centralizado (p. ej., ELK Stack, Loki) y de rastreo distribuido (p. ej., Jaeger, OpenTelemetry).

Comunicación y APIs:

API RESTful [Obligatorio]: Experiencia fundamental en el diseño e implementación de API RESTful.

Otros Protocolos [Valorable]: Se valora positivamente la experiencia con otros protocolos de comunicación, como SOAP.

 

Responsabilidades Clave

 

El arquitecto será responsable de:

Diseño de Alto Nivel y Fundamentación: Definir la arquitectura de alto nivel para los sistemas distribuidos del cliente, diseñando la interacción entre microservicios, procesos de negocio e infraestructura en la nube. Debe ser capaz de documentar y fundamentar sus decisiones, definiendo los drivers de arquitectura y las fitness functions para validar que la solución cumple con los objetivos de negocio y técnicos.

Liderazgo Técnico y Adaptabilidad: Liderar y guiar a los equipos de desarrollo, asegurando la aplicación de las mejores prácticas y estándares de calidad. Deberá ser capaz de iterar y adaptar la arquitectura de manera continua a medida que evolucionan las necesidades del cliente.

Supervisión y Custodia: Custodiar la visión arquitectónica y revisar los entregables para asegurar que se alinean con los principios de la arquitectura, como la separación de responsabilidades y el bajo acoplamiento.

Estrategia de DevOps: Diseñar la estrategia de despliegue e infraestructura como código y supervisar su implementación.

Estrategia de Observabilidad: Definir los estándares de monitorización, logging y rastreo para la solución, asegurando una visibilidad completa del estado del sistema.

 

Confirmar seu email: Enviar Email