Estamos en la búsqueda de un Software Architect con experiencia en el diseño de arquitecturas robustas y escalables, capaz de liderar la toma de decisiones técnicas y de guiar a equipos de desarrollo en la creación de soluciones eficientes. El candidato ideal debe contar con una sólida experiencia en sistemas distribuidos, microservicios, bases de datos y seguridad, además de ser un puente clave entre el equipo de desarrollo y los líderes del proyecto.
Responsabilidades:
Diseño de arquitectura: Definir y diseñar la arquitectura de software para garantizar que las soluciones sean escalables, seguras y de alto rendimiento.
Guía técnica: Liderar y guiar al equipo de desarrollo en la implementación de las mejores prácticas de desarrollo y arquitecturas modernas, como microservicios y arquitectura orientada a eventos.
Toma de decisiones: Evaluar y seleccionar tecnologías y frameworks adecuados para cumplir con los objetivos de los proyectos.
Revisión de código: Realizar revisiones de código críticas para asegurar que el desarrollo cumpla con los estándares arquitectónicos establecidos.
Escalabilidad y rendimiento: Diseñar sistemas con un enfoque en la escalabilidad, balanceo de carga, tolerancia a fallos y rendimiento óptimo.
Seguridad: Incorporar las mejores prácticas de seguridad en el diseño de software, asegurando la protección de datos y el cumplimiento normativo.
Colaboración: Colaborar estrechamente con Product Owners, Desarrolladores, QA Engineers y líderes de proyecto para garantizar que los requisitos del sistema sean claramente comprendidos y alcanzados.
Innovación: Investigar y adoptar nuevas tecnologías para mejorar continuamente la arquitectura y los procesos de desarrollo.
Documentación técnica: Crear y mantener documentación arquitectónica clara y detallada para los equipos de desarrollo y stakeholders.
Gestión de equipos: Coordinar y guiar a los equipos de desarrollo, fomentando el uso de nuevas tecnologías y prácticas eficientes de trabajo.
Requisitos:
Experiencia sólida en arquitectura de software (mínimo 5 años), con un enfoque en sistemas distribuidos y microservicios.
Conocimiento avanzado de Java (o C#), Spring Boot, y bases de datos relacionales y no relacionales.
Experiencia en la definición y diseño de microservicios, API RESTful, y arquitecturas basadas en eventos.
Conocimientos en patrones de diseño y buenas prácticas en el desarrollo de software escalable.
Fuerte dominio en herramientas de automatización y despliegue continuo (CI/CD) como Jenkins, Docker y Kubernetes.
Experiencia en seguridad de aplicaciones y manejo de encriptación.
Conocimiento de servicios en la nube como AWS, Azure o Google Cloud Platform.
Familiaridad con DevOps y metodologías de integración y entrega continua.
Capacidad para tomar decisiones críticas y resolver problemas complejos de diseño.
Excelentes habilidades de comunicación y capacidad para interactuar con diferentes equipos y stakeholders.
Deseables:
Experiencia en arquitectura de sistemas distribuidos con alto tráfico y demanda.
Conocimientos en Docker, Kubernetes, y otros contenedores para la creación de entornos virtualizados y escalables.
Conocimiento en mensajería asincrónica como RabbitMQ, Kafka o similares.
Experiencia previa en la implementación de sistemas con WebSockets y streaming de datos.
Familiaridad con herramientas de monitoreo y alertas para garantizar la salud de los sistemas en producción (e.g., Prometheus, Grafana).
Experiencia con frameworks frontend (e.g., React, Angular) para un entendimiento holístico de la arquitectura full-stack.
Competencias:
Liderazgo técnico: Capacidad para liderar equipos y guiar el desarrollo de arquitecturas eficientes.
Pensamiento estratégico: Habilidad para evaluar y seleccionar tecnologías que permitan la escalabilidad a largo plazo.
Resolución de problemas: Enfoque práctico para abordar y solucionar problemas complejos.
Comunicación efectiva: Capacidad para transmitir ideas técnicas de manera clara y comprensible a diferentes audiencias.
Adaptabilidad: Capacidad para adoptar y promover el uso de nuevas tecnologías y prácticas de desarrollo.
Tipo de puesto: Tiempo completo
Sueldo: $40,000.00 - $80,000.00 al mes
Tipo de jornada:
Turno de 8 horas
Lugar de trabajo: Empleo presencial
#J-18808-Ljbffr