Arquitecto de Software
Remoto con presencialidad ocasional a demanda
Relación de dependencia
Responsabilidades
- Diseño de Arquitectura de Software
- Definir la arquitectura de sistemas de software, asegurando que las soluciones propuestas cumplan con los requisitos funcionales y no funcionales (escalabilidad, seguridad, rendimiento, mantenibilidad, etc.).
- Identificar y seleccionar las tecnologías, frameworks y patrones de diseño más adecuados para cada solución.
- Garantizar la interoperabilidad y la integración eficiente con otros sistemas y servicios.
Requisitos
- Experiencia en diseño y desarrollo de arquitecturas escalables, modulares y mantenibles.
- Conocimiento avanzado en patrones de diseño de software (MVC, Microservicios, CQRS, etc.).
- Experiencia con arquitecturas orientadas a eventos, API-first y arquitecturas de microservicios.
- Conocimiento en lenguajes de programación modernos (Java, C#, Python, JavaScript/TypeScript, etc.).
- Familiaridad con plataformas cloud (AWS, Azure, GCP) y sus servicios asociados.
- Experiencia en contenedores y orquestación (Docker, Kubernetes).
- Conocimiento en bases de datos relacionales y NoSQL, así como en tecnologías de Big Data.
DevOps y Automatización
- Comprensión de principios de CI/CD y experiencia con herramientas como Jenkins, GitLab CI, o CircleCI.
- Implementación de infraestructura como código (IaC) usando Terraform, CloudFormation u otras herramientas.
Seguridad
- Conocimiento de principios de seguridad de software, incluyendo autenticación, autorización, encriptación y OWASP.
- Implementación de soluciones de seguridad para aplicaciones y servicios en entornos cloud y on-premise.
Metodologías y Procesos de Desarrollo
- Experiencia trabajando en entornos ágiles (Scrum, Kanban) y en la integración de procesos arquitectónicos dentro de estos marcos.
- Conocimiento de marcos de arquitectura empresarial (TOGAF, Zachman) es un plus.