Senior Python Backend Engineer
hace 22 horas
Barcelona
ppbIsardVDI /b es una solución open-source de VDI (Virtual Desktop Infrastructure) desarrollada desde Barcelona que da escritorios virtuales y aplicaciones remotas a universidades, administraciones públicas, hospitales y empresas de toda Europa. Combinamos KVM/libvirt, almacenamiento distribuido y un stack de orquestación propio para entregar miles de escritorios concurrentes sobre hardware commodity. Llevamos años en producción con clientes reales y un producto consolidado. /p pBuscamos un/a bBackend Engineer /b para incorporarse al equipo de desarrollo del core de la plataforma. Trabajarás codo a codo con el resto del equipo de backend, los ingenieros de Go que mantienen los servicios de orquestación y el CTO, evolucionando la API v4 que sostiene todo el producto. /p h3Qué harás en el equipo /h3 ul liAmpliar y mantener nuestra bAPI v4 /b construida sobre bFastAPI + Pydantic 2 /b y especificada con bOpenAPI /b, que orquesta escritorios, plantillas, deployments, almacenamiento y reservas de escritorios. /li liDiseñar y evolucionar el sistema de btareas asíncronas con RQ /b (sobre Redis) que sostiene operaciones de larga duración: creación de discos, snapshots, migraciones de almacenamiento, recreación de escritorios. /li liTrabajar contra bRethinkDB /b aprovechando sus change-feeds para propagar estado entre servicios. /li liIntegrar la API con los servicios Go del monorepo (engine, orchestrator, scheduler, bastion, notifier) vía bgRPC/Protobuf /b y Redis. /li liCrear nuevas funcionalidades de producto (storage pools, deployments colaborativos, bastion domains, integraciones SSO/SAML/OIDC, quotas). /li liEscribir y mantener bsuites de tests fiables /b (pytest + entornos contenedorizados con docker-compose) y mejorar nuestro pipeline de CI en GitLab. /li liInvestigar y prototipar mejoras de rendimiento (caching, invalidación, pooling de conexiones a RethinkDB). /li liParticipar en el ciclo SCRUM, code reviews exigentes y discusiones de arquitectura. /li libMás de 2 años desarrollando en Python 3 /b. /li libMás de 2 años con FastAPI /b (o experiencia equivalente con Flask/Starlette dispuesta a moverse a FastAPI) en producción: APIs REST, autenticación, validación con bPydantic /b, diseño async. /li liFamiliaridad con bOpenAPI /b y desarrollo schema-first / contract-first. /li liExperiencia sólida con bDocker y docker-compose /b (nuestro entorno de desarrollo y despliegue es un monorepo con ~30 servicios sobre docker-compose). /li liSoltura con bherramientas de desarrollo /b: git, linters, formatters, depuración local y remota. /li liExperiencia trabajando en equipo bajo bSCRUM /b u otra metodología ágil. /li liExperiencia con bCI/CD /b (idealmente GitLab CI). /li liFamiliaridad con bTDD /b y diseño orientado a tests. /li liExperiencia con bherramientas de calidad de código /b (black, isort, flake8, pylint, mypy, pre-commit). /li /ul h3Sería un puntazo /h3 ul libExperiencia con sistemas de autenticación y autorización /b: OAuth2, OIDC, SAML, JWT, single sign-on, integraciones con proveedores corporativos (LDAP, Active Directory, Google Workspace), gestión de sesiones y refresh tokens. /li liExperiencia con bbases de datos NoSQL orientadas a documentos /b, especialmente bRethinkDB /b o similares con change-feeds. /li liExperiencia con bRQ /b (u otras colas tipo Celery / Sidekiq) y patrones de tareas idempotentes. /li liConocimiento de bvirtualización /b: KVM/QEMU, libvirt, OVMF/UEFI, redes virtuales, storage (qcow2, backing chains). /li liAlgo de bGo /b — buena parte del plano de control está escrito en Go y tocarás las fronteras. /li liAlgo de bPHP /b - para evolucionar el plugin de Moodle desarrollado en PHP en caso de necesidad /li liExperiencia con bgRPC / Protobuf /b y generación de código (buf). /li liExperiencia con bWebSockets / Socket.IO /b para eventos en tiempo real. /li liHaber trabajado con bproyectos open-source /b y comunidades públicas (GitLab, issues, MRs externas). /li liConocimiento de bprotocolos de escritorio remoto /b: SPICE, RDP, VNC, Guacamole. /li liInterés por la bsoberanía digital /b, el software libre y la administración pública. /li libProducto propio, open-source, consolidado, con clientes reales y misión clara /b (soberanía digital). /li liJornada completa (hasta 40h/semana). /li libTrabajo híbrido /b — oficinas en Barcelona, junto a la parada de metro bMarina /b. /li liStack moderno y coherente: FastAPI, Pydantic 2, RethinkDB, RQ, gRPC, Go, todo desplegado con docker-compose (sin Kubernetes, sin over-engineering). /li liEquipo pequeño, sin bullshit corporativo, decisiones técnicas a la vista de todos en GitLab. /li liSalario competitivo según experiencia, en línea con el rango b35–50k € /b del mercado para perfiles backend senior en Barcelona, negociable al alza para perfiles con experiencia demostrada en virtualización o sistemas distribuidos. /li liFormación continua y participación en upstream (libvirt, RethinkDB, etc.). /li /ul /p #J-18808-Ljbffr