Conocimientos técnicos:
Base sólida en algoritmos y estructuras de datos.
Experiencia comprobada en desarrollo de aplicaciones de alto tráfico y alta disponibilidad.
Comprensión y aplicación de patrones de diseño e integración.
Uso de buenas prácticas de Clean Code y principios SOLID.
Manejo de TDD (Test Driven Development).
Conceptos claros sobre CI/CD y su implementación en pipelines reales.
Experiencia con herramientas como Git, Maven/Gradle, Docker, Kubernetes, Kafka, RabbitMQ, Redis y bases de datos relacionales y no relacionales.
Conocimiento y uso de Swagger/OpenAPI para documentar APIs.
Experiencia excluyente (Senior)
Al menos 5 años de experiencia en desarrollo de aplicaciones Java con Spring.
Aplicación práctica de TDD y cobertura de tests unitarios/integración.
Enfoque en eficiencia de rendimiento en desarrollo backend.
Experiencia con tecnologías: Golang (excluyente Sr), Docker, Kubernetes, GitLab CI / GitHub Actions / Jenkins, Linux/Unix-like OS, Redis, Kafka/RabbitMQ .
Deseable pero no excluyente
Conocimientos básicos de programación funcional.
Experiencia en desarrollo de sistemas distribuidos.
Uso de servicios en la nube: Azure, GCP.
Manejo de expresiones lambda y concurrencia (threads).
Dominio conversacional en inglés técnico
Habilidades personales:
Excelentes habilidades de comunicación oral y escrita.
Capacidad de autonomía para resolver problemas complejos.
Proactivo, comprometido y orientado a resultados.
Habilidad para priorizar tareas, diferenciando lo importante de lo urgente.
Tecnologías deseables:
Lenguajes: Golang, Java
Bases de datos: MongoDB, Cassandra, MySQL, PostgreSQL, Redis
Colas de mensajes: Kafka, RabbitMQ
Infraestructura: Kubernetes
Herramientas CI/CD y DevOps