*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*:
- *experiência 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*.
- experiência 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*.
- experiência 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*:
- experiência 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.
- experiência 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*).
- experiência 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