Líder técnico de desarrollo backend
Sobre la empresa
Nuestro cliente se dedica en crear aplicaciones móvil para el sector Fintech y Financiero.
Sobre el puesto de la vacante
El Líder de Desarrollo Backend será responsable de coordinar y guiar al equipo de desarrollo en la construcción y mantenimiento de aplicaciones backend de alta calidad, seguras y escalables, basadas en microservicios y utilizando tecnologías como Java, Spring Boot, Redis, Docker, y OpenShift. Este rol implica supervisión técnica, definición de estrategias de desarrollo y toma de decisiones clave en diseño, arquitectura y despliegue de APIs, asegurando la calidad y estabilidad de los sistemas. Además, trabajará en estrecha colaboración con equipos multidisciplinarios en un entorno ágil para optimizar la eficiencia del desarrollo y garantizar la entrega de soluciones que cumplan con los objetivos del negocio.
Reto
- Liderazgo Técnico y Definición de Arquitectura:
Definir la arquitectura de APIs, microservicios y backends basada en los estándares definidos en INVEX para aplicaciones. Asegurando la modularidad y la eficiencia en la comunicación entre servicios.
Tomar decisiones sobre como implementar los patrones de diseño y enfoques arquitectónicos estandarizados dentro de INVEX, garantizando que los sistemas sean escalables y adaptables a los cambios en los requisitos del negocio.
- Coordinación y Gestión del Equipo de Desarrollo:
Asignar y supervisar tareas dentro del equipo, estableciendo prioridades y promoviendo buenas prácticas de desarrollo para asegurar la calidad en cada etapa del proyecto.
Proveer mentoría técnica a los desarrolladores, ayudando a resolver problemas complejos y facilitando el crecimiento profesional del equipo.
- Automatización y Optimización de Procesos de CI/CD:
Supervisar y mejorar el pipeline de CI/CD, asegurando que todas las aplicaciones se desplieguen de manera continua, segura y con alta disponibilidad.
Colaborar con DevOps para optimizar los flujos de trabajo de integración y despliegue, minimizando el tiempo de entrega de nuevas funcionalidades.
- Implementación y Mantenimiento de Prácticas de Seguridad:
Asegurar que las aplicaciones cumplan con estándares de seguridad, incluyendo control de acceso, encriptación y manejo seguro de datos.
Definir y aplicar políticas de seguridad en la autenticación de usuarios y la comunicación entre servicios, asegurando la integridad y confidencialidad de los datos.
- Colaboración Interdisciplinaria:
Trabajar estrechamente con equipos de QA, frontend, diseño y producto para coordinar la entrega de servicios que cumplan con los requisitos y expectativas de negocio.
Participar en la planificación de nuevos proyectos y en la definición de requisitos técnicos en colaboración con otros líderes y stakeholders.
- Gestión de Carga y Optimización de Redis:
Supervisar y optimizar el uso de Redis en la infraestructura, mejorando el rendimiento y reduciendo el tiempo de respuesta de las aplicaciones.
Definir y ajustar configuraciones de caché y almacenamiento en Redis para soportar aplicaciones de alto tráfico y alta concurrencia.
- Monitoreo y Mantenimiento de Servicios:
Implementar y supervisar herramientas de monitoreo y logging para asegurar la visibilidad del rendimiento de los microservicios.
Configurar alertas y sistemas de seguimiento para anticipar problemas y minimizar el impacto en los usuarios finales.
Responsabilidades
Alinear la Arquitectura y Patrones de Diseño:
Decidir sobre la arquitectura de microservicios y los patrones de diseño que optimicen la modularidad, seguridad y eficiencia de los servicios backend de acuerdo con el estandar del banco.
Determinar la estructura y estandarización de las APIs, así como la integración de patrones de resiliencia y seguridad como Zero Trust, circuit breaker y retry patterns.
Herramientas y Tecnologías de Despliegue:
Apoyar al equipo de desarrollo con la implementación de las herramientas y tecnologías para el despliegue de contenedores, como Docker y OpenShift, maximizando la escalabilidad y la administración de recursos.
Coordinarse con los equipos de infraestructura sobre la configuración de Kubernetes/OpenShift, incluyendo autoscaling, balanceo de carga y uso de recursos, garantizando que el entorno esté optimizado para altos volúmenes de tráfico.
Estrategias de Seguridad y Gestión de Acceso:
Ayudar a su equipo a implementar estrategias de autenticación y autorización (como OAuth2, JWT) para proteger la comunicación entre microservicios y asegurar el acceso controlado a las APIs.
Tomar decisiones sobre el uso de encriptación y otras medidas de seguridad para proteger los datos sensibles en tránsito y en reposo.
Optimización de CI/CD y Control de Calidad:
Diseñar y ajustar el pipeline de CI/CD, seleccionando prácticas de pruebas automatizadas y flujos de trabajo que aseguren la calidad del software antes del despliegue.
Decidir sobre el alcance y la profundidad de las pruebas que deben integrarse en el pipeline, asegurando que se minimicen errores y se mantenga la estabilidad del sistema en producción.
Gestión de Carga y Optimización del Uso de Redis:
Tomar decisiones sobre la configuración y estrategias de uso de Redis, optimizando el almacenamiento en caché y garantizando que las aplicaciones mantengan tiempos de respuesta rápidos.
Evaluar y ajustar las políticas de caché y escalabilidad de Redis para soportar cargas altas y garantizar una experiencia de usuario fluida.
Colaboración y Planificación Estratégica:
Participar en la planificación estratégica y coordinar la priorización de tareas y recursos en función de los objetivos del proyecto y del negocio.
Evaluar y tomar decisiones sobre cambios arquitectónicos o tecnológicos en función de las necesidades del negocio, priorizando la eficiencia y estabilidad de la infraestructura.
Requerimiento de vacante
Experiencia
de 4 a 5 años
Habilidades y aptitudes
Dominio avanzado de Java (preferiblemente versiones 11 o superiores) para el desarrollo de aplicaciones de alto rendimiento, con conocimiento profundo en programación orientada a objetos, concurrencia y optimización de memoria. Experiencia sólida en Spring Boot para el desarrollo de microservicios, incluyendo módulos como Spring Data, Spring Security, Spring Cloud y Spring Batch.
Conocimiento avanzado en arquitecturas basadas en microservicios y en patrones de diseño aplicables, como service discovery, circuit breaker, y event-driven architecture. Experiencia en diseño de APIs RESTful, incluyendo buenas prácticas para versionado, estandarización, autenticación y optimización de endpoints para reducir latencia.
Conocimiento profundo de Docker para la creación, configuración y administración de contenedores, incluyendo el diseño de imágenes eficientes y seguras. Experiencia en OpenShift o Kubernetes para la orquestación de contenedores, con capacidades en despliegue, escalabilidad, balanceo de carga y monitoreo de servicios.
Dominio en el uso de Redis para caché y gestión de sesiones en aplicaciones de alto rendimiento, incluyendo configuración avanzada y estrategias de almacenamiento en caché.
Capacidad para optimizar el uso de Redis en escenarios de alta concurrencia, mejorando la respuesta de las aplicaciones y reduciendo la carga en las bases de datos.
Conocimiento en CI/CD con herramientas como Jenkins, GitLab CI/CD o GitHub Actions, para la automatización de pruebas, integración y despliegue.
Capacidad para diseñar pipelines eficientes y seguros, asegurando la entrega continua y rápida de nuevas funcionalidades sin comprometer la calidad.
Familiaridad con prácticas de seguridad en backend, incluyendo autenticación (OAuth2, JWT), encriptación de datos sensibles y manejo seguro de claves y secretos. Conocimientos de OWASP y prácticas recomendadas para proteger los servicios backend y asegurar la integridad de los datos de los usuarios.
Qué te ofrecemos
Salario: Se revisa en entrevista
Modalidad: Remoto / Home-office
Lugar de trabajo: Ciudad de México
Otros beneficios
- Contrato directo con el cliente.
- Modelo 90% remoto
- Prestaciones de ley.
- Horario de Lunes a Viernes de 9 am a 7 pm , con dos horas de comida