Descripción
Buscamos un ingeniero de software para ayudar a mantener, modernizar y escalar nuestros sistemas de producción centrales. El candidato ideal prospera en situaciones de "producción caída", se preocupa profundamente por la estabilidad y el rendimiento, y se siente cómodo tanto al refactorizar código heredado como al construir nuevos sistemas desde cero. Formarás parte de un equipo de alto impacto cuya misión es garantizar la alta disponibilidad, mejorar la observabilidad, reducir la deuda técnica y posibilitar el crecimiento futuro.
Responsabilidades clave:
* Ser responsable de la salud, estabilidad y rendimiento de servicios críticos: responder a incidentes, realizar análisis de causa raíz, implementar acciones correctivas y prevenir su recurrencia.
* Diagnosticar problemas de latencia, rendimiento o disponibilidad en producción y diseñar soluciones escalables para mitigar riesgos.
* Refactorizar o reescribir procesos y subsistemas clave: evaluarás la arquitectura existente, propondrás mejoras y ejecutarás la escritura de código desde cero cuando sea necesario.
* Trabajar en todo el ciclo de vida: desde el diseño e implementación hasta las canalizaciones CI/CD, despliegue, monitoreo y mantenimiento.
* Colaborar con equipos multifuncionales (producto, operaciones, QA, DevOps) para definir requisitos, garantizar SLA/SLO adecuados y entregar funciones robustas de API y servicios.
* Desarrollar y mantener herramientas internas, automatización y paneles que mejoren la productividad de ingeniería, la visibilidad operativa y la ejecución de procedimientos operativos.
* Promover buenas prácticas en calidad del código, pruebas (automatizadas y manuales), observabilidad/seguimiento/registro, seguridad y tolerancia a fallos.
* Mantener y evolucionar nuestra infraestructura: contenerización (Kubernetes), entorno en la nube (Azure), almacenes de datos relacionales (SQL) y protocolos de comunicación entre servicios (HTTP/REST, SOAP, XML\-RPC).
Habilidades y experiencia requeridas:
* 5 años o más de experiencia profesional en ingeniería de software (o equivalente).
* Conocimientos sólidos en uno o más de los siguientes: Ruby on Rails, Java, Golang.
* Comprensión sólida de bases de datos relacionales SQL y capacidad para optimizar consultas, esquemas y transacciones para lograr rendimiento y escalabilidad.
* Experiencia práctica con plataformas en la nube (especialmente Azure) y orquestación de contenedores (Kubernetes).
* Conocimiento profundo del protocolo HTTP y diversos estilos de comunicación mediante API: REST, SOAP, XML\-RPC.
* Experiencia demostrada con canalizaciones CI/CD: construcción, optimización y ejecución de flujos automatizados de compilación/pruebas/despliegue.
* Habilidades sólidas de depuración y ajuste de rendimiento en sistemas de producción: puedes identificar cuellos de botella, evaluar compromisos (latencia, rendimiento, costo, mantenibilidad) e implementar soluciones adecuadas.
* Capacidad comprobada para refactorizar o reescribir subsistemas clave de software: te sientes cómodo comenzando desde cero cuando sea necesario y llevando el desarrollo hasta producción.
* Excelentes habilidades comunicativas, capacidad para interactuar con partes interesadas, articular claramente los compromisos y entregar soluciones técnicas alineadas con los objetivos comerciales.