23 sep
|
Ciclogreen
|
España
¿Y si tus ganas de crear software robusto y tu capacidad técnica fueran clave en una startup en crecimiento exponencial? En Ciclogreen, no queremos ser solo una empresa: queremos ser uno de los mejores lugares del mundo para trabajar y la plataforma de movilidad sostenible de referencia. Y para llegar lejos, necesitamos el mejor equipo técnico.
Estamos viviendo un crecimiento espectacular. Ciclogreen opera una API REST de movilidad sostenible para empresas y usuarios que maneja desde el registro de desplazamientos y la certificación energética, hasta incentivos y operativa de negocio con dinero, identidad y datos de terceros.
No buscamos a alguien para hacer un simple “CRUD de Django”. Buscamos un perfil de ingeniería sólido, alguien capaz de entregar cambios de negocio con contratos claros, tests y un profundo respeto por la concurrencia, el aislamiento de datos (tenancy) y la seguridad, en un entorno cloud asíncrono y de alto tráfico.
¿Quiénes somos? ?
Somos Ciclogreen, la plataforma de referencia que ayuda a fomentar la movilidad sostenible. Nuestro core es una app que premia los viajes en coche compartido y otros medios de transporte sostenible, que complementamos con un servicio de consultoría en movilidad sostenible para empresas.
Después de más de 10 años como plataforma B2B, hemos abierto Ciclogreen al público general y hoy, cualquier persona puede compartir coche y moverse de forma sostenible con nuestra app.
En solo unos meses hemos escalado de forma salvaje el número de usuarios activos mensuales, alcanzando millones de kilómetros en viajes compartidos y un altísimo volumen de peticiones en nuestra infraestructura.
? Objetivos de este rol
Queremos que seas una pieza clave en la evolución de nuestra plataforma tecnológica:
- Construir con calidad y sentido de negocio: Diseñar e implementar endpoints y lógica de dominio robusta asegurando migraciones fiables y un manejo de errores consistente.
- Garantizar la fiabilidad y el aislamiento: Tratar la concurrencia, las transacciones y el aislamiento multi-tenant (para que una empresa nunca acceda a datos de otra) como pilares fundamentales, no como detalles de última hora.
- Dominar la asincronía: Escalar nuestra capacidad de procesamiento usando tareas en segundo plano para proteger el rendimiento de la API frente a trabajos pesados.
- Acelerar con seguridad: Aplicar Spec-Driven Development (SDD). Pensar, diseñar y acordar antes de teclear, para asegurar implementaciones acotadas y de alta calidad.
? Tus responsabilidades
- Desarrollo de API y Dominio: Implementarás endpoints con Django y DRF, trabajando con serializers, permisos y servicios complejos.
- Gestión Asíncrona (Celery + Redis): Trabajarás con tareas en segundo plano, colas de distinta prioridad, workers, reintentos e idempotencia para aislar el trabajo pesado del tráfico HTTP.
- Base de datos y Concurrencia (PostgreSQL): Manejarás condiciones de carrera, bloqueos, snapshots y consultas eficientes (evitando el problema N+1 y el SQL inseguro).
- Integración de Terceros:
Conectarás proveedores externos (pagos, KYC, mensajería, almacenamiento, IA) detrás de contratos y mocks, sin asumir nunca que el tercero siempre responde bien.
- Calidad y Testing: Escribirás y mantendrás tests (unitarios, de integración, de tenancy y dinero). Los tests viajan siempre con tu código.
- Despliegue y CI/CD (Docker + AWS): Moverás el trabajo por Git con PRs revisables y pipelines de calidad. Eres responsable de que tu cambio sea desplegable (no vale el "en mi máquina funciona").
? Un día aquí podría ser… Empiezas la jornada con un ticket y su especificación técnica (SDD): repasas el alcance, los criterios de aceptación y el contrato de la API antes de escribir una sola línea de código. Si algo no encaja con Producto o con quienes consumen la API, lo aclaras antes de seguir; nada de improvisar la arquitectura sobre la marcha.
Después pasas a la implementación en Django: lógica de negocio, aislamiento multi-tenant y tests que validen tanto el happy path como los casos límite realmente importantes. Si hay tareas asíncronas, las resuelves con Celery y las compruebas simulando el entorno real.
Eres responsable de tu cambio de principio a fin. Subes el código, abres la PR, compruebas la CI, despliegas en el ambiente de staging y verificas que todo responda como debe. Si el pipeline o los logs cantan un error, te encargas tú de solucionarlo.
Cierras el día con la solución empaquetada en Docker, lista para el flujo de CI/CD en AWS hacia producción, y con el ticket actualizado. Regla de oro: código que no pasa la CI, no llega a producción.
? Cómo se ve el éxito en este rol
Sabrás que lo estás haciendo bien cuando:
- El código implementa la especificación: Cumples el principio de "Spec primero". No subes features improvisadas en un PR gigante de última hora.
- Priorizas lo que importa: Entiendes que el orden innegociable es: Seguridad > Tenancy > Corrección > Rendimiento > Estilo.
- Aplicas el "Fail-fast": Validas entradas, devuelves errores estructurados y jamás dejas un except vacío ni subes credenciales al código.
- Tu código inspira confianza: Entregas features de punta a punta donde las migraciones, las tareas asíncronas y los caminos de error han sido pensados antes de hacer merge. La CI/CD no es solo "un tick verde", sino una barrera real de calidad.
✅ Requisitos
- Experiencia real: 3–5 años de desarrollo backend sólido en Python con Django (y API REST) o un equivalente demostrado.
- Asincronía en producción: Has trabajado seriamente con Celery/RQ/similar: conoces las colas, los reintentos y cómo gestionar fallos parciales.
- Criterio de concurrencia y SQL: Sabes por qué dos requests pueden corromper un saldo y cómo evitarlo. Entiendes un plan de consultas y transacciones relacionales en PostgreSQL (sin necesidad de ser DBA).
- Testing como hábito: Distingues pruebas unitarias de integración, y sabes cómo mockear sin golpear a proveedores reales.
- Entorno de ejecución: Manejo fluido de Docker para desarrollo y tests.
- Idiomas: Lectura cómoda de inglés técnico; escritura de código y mensajes de API en inglés. Comunicación fluida y clara en español con el equipo.
Sería genial que además:
- Tengas experiencia práctica como usuario de plataforma AWS (contenedores, pipelines, logs, variables de entorno) y hayas sufrido/mejorado un gate de CI/CD.
- Hayas trabajado con disciplinas de especificación por contrato (SDD, OpenAPI, ADRs).
- Tengas experiencia gestionando cargas de alto volumen (batch, exports, jobs pesados) y trabajando con productos multi-tenant y datos sensibles (identidad, pagos, PII).
- Tengas conocimientos básicos de AppSec (prevención de inyecciones, secretos, autenticación vs autorización).
? Este rol NO es para ti si…
- Buscas hacer un "CRUD de Django" sencillo y desentenderte del negocio, los bloqueos de base de datos o la seguridad.
- Piensas que los tests son un trámite aburrido que se hace al final, en lugar de una herramienta de diseño y confianza.
- Eres de los que dicen "en mi máquina funciona" y esperas que haya un equipo DevOps que se encargue mágicamente del despliegue. (No serás arquitecto cloud a tiempo completo, pero debes responsabilizarte de lo que entregas).
- Prefieres saltarte el diseño y la especificación para empezar a teclear código improvisado en PRs interminables.
- Quieres tener controlada solo tu ownership y no te da curiosidad conocer otras áreas.
? Qué ofrecemos
- Contrato indefinido con salario fijo (35.000 - 45.000 €) según experiencia. ?
- Horario 100% flexible: puedes entrar en cualquier momento, parar para comer lo que necesites, etc. ⏰
- Teletrabajo: 100% Remoto ?
- Trabajar en un producto donde aportarás para acelerar la transición hacia la movilidad sostenible de miles de personas.
- Ambiente startup. Somos compañeros/as, amigos/as, aprendemos los unos de los otros... ?
- Flexibilidad real y conciliación. 23 días de vacaciones al año que podrás distribuir como quieras y además el día de tu cumpleaños libre. ????
- Un lugar donde evolucionar profesionalmente en una empresa innovadora, dinámica y en pleno crecimiento, que busca tener un impacto real en el medio ambiente y la sociedad. ?
Ciclogreen ha sido premiada por el Ministerio de Medio Ambiente y Google entre otros, y tenemos un excitante camino por delante. Si sientes que puedes ser el motor técnico que impulse nuestra plataforma, y al leer esto has pensado: "yo soy el desarrollador/a que va a sostener este crecimiento desde el código", queremos conocerte.
Aplica completando el formulario: https://tally.so/r/VLrXJJ
📌 Backend (Python - Django) (España)
🏢 Ciclogreen
📍 España