Buscamos un Technical Lead backend que siga programando y que sea también la referencia técnica del equipo. Definirá cómo se construyen los servicios, estimará el trabajo, coordinará los pases a producción y se encargará de que las personas nuevas se integren rápido. El proyecto usa microservicios en Java Spring Boot sobre AWS, con MySQL (RDS), MongoDB, Redis, Kafka y WebSocket.
Modalidad de contratación:
- Proyecto de 7 a 12 meses
- Horario full time
- Modalidad remota
Funciones principales:
- Diseñar, desarrollar y mantener microservicios en Java Spring Boot, y programar directamente las funcionalidades de mayor complejidad.
- Definir y documentar los lineamientos técnicos del backend, como la estructura de servicios, los contratos de APIs, el manejo de errores y los estándares de código.
- Mantener y evolucionar las librerías internas que comparten los servicios, con control de versiones y compatibilidad hacia atrás.
- Diseñar la comunicación entre servicios con eventos en Kafka, tiempo real con WebSocket y caché con Redis, y decidir cuándo conviene usar cada uno.
- Elegir el modelo de datos entre MySQL (RDS) y MongoDB según el caso de uso, y revisar consultas e índices cuando haya problemas de rendimiento.
- Estimar historias y épicas con el equipo, e identificar riesgos técnicos y dependencias antes de comprometer fechas.
- Coordinar los pases a producción, lo que incluye revisar qué se libera, validar el plan de rollback y acompañar el despliegue en AWS.
- Revisar el código del equipo y dar retroalimentación concreta sobre diseño, legibilidad y riesgos.
- Liderar el onboarding técnico de nuevos integrantes: ambiente local, arquitectura, librerías internas y flujo de trabajo.
- Participar en las ceremonias ágiles y ser el contacto técnico con producto, QA, frontend y cliente.
- Diagnosticar incidentes en producción y darles seguimiento hasta encontrar la causa raíz.
Requerimientos técnicos:
- Título universitario en Ciencias de la Computación, Ingeniería de Software o carrera afín.
- 8 años o más de experiencia desarrollando en Java.
- Al menos 2 años como referente técnico o Tech Lead de un equipo de desarrollo.
- Experiencia construyendo y operando microservicios con Spring Boot en producción, incluyendo Spring Data JPA/Hibernate.
- Experiencia con MySQL (de preferencia en Amazon RDS) y MongoDB, en modelado de datos, optimización de consultas e índices.
- Experiencia usando Redis para caché.
- Experiencia con Kafka, en el diseño de tópicos, productores y consumidores, y en el manejo de reintentos y mensajes duplicados.
- Experiencia implementando WebSocket para comunicación en tiempo real.
- Experiencia desplegando y operando servicios en AWS.
- Experiencia creando o manteniendo librerías compartidas entre servicios o equipos.
- Experiencia estimando trabajo y participando en la planificación de releases.
- Pruebas automatizadas con JUnit y Mockito, y uso de Git con flujo de pull requests.
- Aplicación de prácticas de seguridad según OWASP, como validación de entradas, consultas parametrizadas y autenticación y autorización entre servicios.
- Capacidad para explicar decisiones técnicas tanto a perfiles técnicos como no técnicos.