Sobre el proyecto
Estamos construyendo una plataforma que unifique y orqueste varios servicios ya existentes relacionados con procesamiento de vídeo y audio.
- Apificarlos (exponerlos como servicios web bien diseñados).
- Unificarlos en una plataforma que permita crear y gestionar tareas (jobs) que lancen los servicios necesarios en cada flujo.
- Facilitar que, a futuro, podamos ir integrando más servicios de forma incremental.
Responsabilidades
- Diseñar y desarrollar la plataforma de orquestación de tareas.
- Creación, seguimiento y gestión de tareas que encadenen los servicios disponibles.
- Manejo de estados, colas, reintentos, logging y trazabilidad.
- Apificar servicios existentes actualmente desplegados como scripts en Docker:
- Diseño de endpoints.
- Adaptación de scripts para funcionar como workers/servicios robustos.
- Diseño e implementación del frontend funcional:
- UI para crear y lanzar jobs.
- Visualización de estado, resultados y logs.
- Interfaces básicas para ingesta de vídeo/audio y revisión/corrección humana.
- Definir y concretar junto al equipo arquitectura (autenticación, gestión de usuarios/roles, permisos) y estimar impacto en costes.
- Proponer mejoras técnicas y de producto para acelerar el desarrollo y facilitar futuras integraciones.
- Documentar APIs, flujos y decisiones técnicas para que el sistema sea mantenible.
Requisitos indispensables
- Full-stack con experiencia demostrable en proyectos reales:
- Backend: Preferible Python (FastAPI, Django o similar). Valorable Node.js/TypeScript.
- Frontend: Preferible React/Next.js.
- Experiencia creando APIs productivas:
- Autenticación/autorización (JWT, OAuth2, etc.).
- Diseño de modelos de datos y contratos de API.
- Experiencia sólida con bases de datos relacionales (PostgreSQL o similar). Valorable experiencia con Redis u otro almacén para colas/cache.
- Experiencia previa con herramientas de contenerización (preferible Docker).
- Habituado a trabajar con servicios asíncronos / colas de trabajo (ej. Celery, RabbitMQ o equivalente).
- Experiencia básica en observabilidad: Integración de logs estructurados y, preferiblemente, métricas y/o alertas en producción.
- Capacidad para trabajar prácticamente en autonomía, interactuando con un equipo técnico para aclarar requerimientos y tomar decisiones.
- Uso avanzado y habitual de herramientas de IA para programación (condición imprescindible):
- Asistentes de código (p.ej. Claude Code, OpenAI Codex, etc.).
- Capacidad real para estructurar prompts, generar scaffolding de código, tests, documentación y refactors apoyándote en IA.
- Buenas prácticas:
- Control de versiones.
- Tests básicos (unitarios/integración y funcionales donde tenga sentido).
- Sensibilidad por la calidad y la simplicidad del código.
Valorará positivamente
- Experiencia con procesamiento de medios (audio/vídeo) y pipelines de ML/IA.
- Experiencia previa en integración de scripts o servicios batch detrás de una API.
- Experiencia en diseño de gestión de usuarios/roles y permisos granulares.
- Conocimientos de alguna nube (AWS, GCP, Azure) y despliegue de servicios (CI/CD).
- Experiencia previa como freelance/consultor técnico (gestión del tiempo, reporting, estimaciones).
Condiciones del freelance
- Tipo de colaboración: freelance.
- Dedicación: a definir (idealmente 20 horas/semana de forma sostenida; podemos ajustar según disponibilidad).
- Trabajo 100% remoto, con reuniones de alineación (horario europeo). Preferible con disponibilidad para asistir a reuniones presencialmente.
- Duración: inicialmente proyecto de varias semanas/meses, con posibilidad de extender según resultados y roadmap.