Sobre este puesto de Backend Engineer en Workana
Desde Workana, estamos acompañando a una empresa tecnológica líder en la búsqueda de un/a Backend Engineer (Mid–Senior) para sumarse a un equipo de R&D enfocado en una plataforma de voz en tiempo real.
La compañía construye tecnología en hiperescala, donde las decisiones de ingeniería impactan a millones de usuarios y a operaciones críticas de bancos, retailers y grandes empresas. Cuenta con más de 100 profesionales trabajando sobre sistemas distribuidos resilientes y plataformas capaces de procesar miles de millones de interacciones al año.
Es un entorno de alto rendimiento, curiosidad técnica y colaboración, con espacio para crecer, aprender y mantener un balance saludable entre vida personal y profesional.
Si te interesa resolver problemas complejos, trabajar con sistemas distribuidos y construir tecnología donde cada milisegundo importa, esta oportunidad puede ser para vos.
Objetivo del puesto
Desarrollar y evolucionar los servicios que controlan el flujo de llamadas en tiempo real, incluyendo originación, control de llamadas, entrega de eventos, webhooks, rate limiting, listas negras y métricas.
El objetivo es conectar el core de telefonía con la capa de aplicación manteniendo baja latencia, alta disponibilidad y comportamiento predecible bajo carga.
Responsabilidades
- APIs HTTP y WebSocket: desarrollar servicios que orquesten llamadas en curso entre la aplicación y el core de voz, utilizando contratos definidos en OpenAPI y webhooks firmados con HMAC-SHA256.
- Control de llamadas: trabajar con FreeSWITCH vía ESL para implementar originación, TRANSFER, BRIDGE, grabación, reproducción y streaming de audio, IVR y captura de DTMF.
- Arquitecturas orientadas a eventos: trabajar con Kafka particionado por llamada, ZeroMQ para despacho a workers, Redis para ownership de llamadas y distributed locks, y transactional outbox para garantizar la entrega de eventos.
- Guardarraíles del negocio: implementar y evolucionar rate limits por carrier, listas negras, control de concurrencia, tarificación y métricas operativas.
- Servicios de IA de voz: desarrollar servicios de síntesis de voz que integran múltiples motores de TTS, caché por contenido y streaming de baja latencia; trabajar también con detección de buzón de voz y voicebots con audio bidireccional.
- Integraciones con LLMs: desarrollar superficies que permitan a modelos de lenguaje operar el sistema mediante herramientas MCP para acciones como iniciar o finalizar llamadas, reproducir audio y controlar streams.
- Calidad y testing: desarrollar pruebas automatizadas para el código propio y asegurar la calidad de los servicios en producción.
Requirements
Requisitos
- 3–6+ años de experiencia construyendo backends en producción, con responsabilidad real sobre los sistemas que desarrollaste y operaste.
- Dominio sólido de al menos uno de estos lenguajes y disposición real para trabajar con los otros: Go, Python (asyncio) o PHP/Laravel.
- Experiencia práctica con concurrencia, incluyendo async/await, goroutines, queues, workers y race conditions, entendiendo por qué un sistema se degrada bajo carga.
- Experiencia con arquitecturas orientadas a eventos, incluyendo brokers o colas en producción, idempotencia, retries, backpressure y entrega al menos una vez.
- Experiencia con WebSockets y comunicación bidireccional en tiempo real.
- Buen manejo de SQL y experiencia con MySQL 8, incluyendo índices, execution plans, connection limits y migraciones reversibles.
- Mentalidad orientada a performance y resiliencia, pensando en p99, modos de falla y comportamiento bajo carga, no solamente en el camino feliz.
- Inglés técnico funcional para documentación, herramientas y comunicación básica con vendors o soporte.
- Experiencia utilizando IA como parte del proceso de desarrollo, incluyendo asistentes de código, agentes, generación de pruebas o documentación. Nos interesa especialmente cómo evaluás y validás el output generado por IA.
Será un plus contar con
- Experiencia con FreeSWITCH, Asterisk, Kamailio, RTPEngine, SIP, RTP o WebRTC, o cualquier exposición real a señalización o media.
- Experiencia con Kafka, ZeroMQ, Redis Streams u otras tecnologías de mensajería distribuida bajo carga sostenida.
- Experiencia integrando LLMs en productos reales, incluyendo APIs de modelos, agentes, RAG, MCP o automatizaciones como n8n.
- Experiencia con STT/TTS o pipelines de audio, incluyendo FFmpeg, transcodificación, streaming o normalización a PCM.
- Experiencia con ClickHouse u otros almacenes columnares para analítica de alto volumen.
- Conocimientos suficientes de Kubernetes para depurar servicios en producción.
- Experiencia con React, TypeScript o Inertia.
- Experiencia con OpenTelemetry y prácticas de observabilidad.
Benefits
- Salario competitivo en USD.
- Trabajo 100% remoto en todo LatAm.
- Ambiente de trabajo dinámico y colaborativo.
- La oportunidad de trabajar sobre sistemas de voz en tiempo real, arquitecturas distribuidas y aplicaciones de IA en producción.