Senior Agents Platform Engineer (x/f/m)
Doctolib
Paris, Paris, France · France
Salary undisclosed
full_time
onsite
English
Posted 4d ago · Oct 17, 2026
Job description
<h2 class="pb-2 pt-4 heading-xl text-foreground"><strong class="font-semibold text-foreground">Set a new pulse for healthcare!</strong></h2> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground">We are looking for a <strong class="font-semibold text-foreground">Senior Agents Platform Engineer</strong> to join the <strong class="font-semibold text-foreground">ML Platform (TIGER)</strong> team in <strong class="font-semibold text-foreground">AI & Machine Learning</strong>.</div> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground">Your mission will be to build the platform that lets every feature team at Doctolib declare an agent once — and get a production-grade, secure, and compliant AI agent by default. You will work on the foundational layer that powers Consultation Assistant, Phone Assistant, Health Companion, and more: a shared agent runtime, a unified GenAI gateway, and the observability and evaluation infrastructure that makes it all trustworthy — contributing directly to safer, faster, and more reliable AI for patients and care teams across Europe.</div> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground">Working in the tech team at Doctolib means building innovative products and features to improve the daily lives of care teams and patients.</div> <h2 class="pb-2 pt-4 heading-xl text-foreground"><strong class="font-semibold text-foreground">What you'll do</strong></h2> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground">Your responsibilities include but are not limited to:</div> <ul class="pb-2 flex flex-col gap-1 list-disc pl-6 text-foreground text-base leading-relaxed"> <li class="break-words text-foreground text-base leading-relaxed">Own the agent manifest and registry — design the single declarative specification (skills, tools, memory, model, guardrails, sandbox, security) that wires any new agent into the full platform automatically, triggerable from product surfaces, other agents (A2A), schedules, or workflows</li> <li class="break-words text-foreground text-base leading-relaxed">Own the GenAI gateway end to end (built on LiteLLM) — manage routing (including KV-cache-aware routing), failover, metering, cost attribution, reserved-capacity pooling, and guardrails across self-hosted (vLLM) and managed providers, serving several hundred million requests per month</li> <li class="break-words text-foreground text-base leading-relaxed">Operate the infrastructure for long-running, streaming agent interactions — build production-grade reliability for SSE/WebSocket connections, queueing and retries, human-in-the-loop approvals, and snapshot/resume, in a sandboxed execution environment consistent with our existing application runtime</li> <li class="break-words text-foreground text-base leading-relaxed">Build feature-flagged, progressive rollout for prompts, models, and configs — including an emergency kill-switch and the audit trail that lets agents act safely on sensitive healthcare data</li> <li class="break-words text-foreground text-base leading-relaxed">Own reliability for the agents platform end to end — define SLOs, lead on-call and incident response, and build runbooks including provider failover for the GenAI gateway</li> <li class="break-words text-foreground text-base leading-relaxed">Build the observability and evaluation layer — online traces and logs, offline evals (LLM-as-judge plus patient and practitioner simulators) gating CI, and the compliance-grade audit trail for health data</li> <li class="break-words text-foreground text-base leading-relaxed">Validate the platform by shipping one or two reference agents yourself before product teams adopt it, and advise feature teams on agent architecture trade-offs</li> </ul> <h2 class="pb-2 pt-4 heading-xl text-foreground"><strong class="font-semibold text-foreground">Who you are</strong></h2> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground">Before you read on: if you don't have the exact profile described below, but you feel this job description matches your skill set, we still encourage you to apply.</div> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground"><strong class="font-semibold text-foreground">You'll be a great fit if you:</strong></div> <ul class="pb-2 flex flex-col gap-1 list-disc pl-6 text-foreground text-base leading-relaxed"> <li class="break-words text-foreground text-base leading-relaxed">Have 5+ years of software engineering experience, including hands-on production experience building or operating LLM-based agent systems (Google ADK or similar), with a solid understanding of agent design patterns: planning/reflection loops, tool calling, state and memory management, multi-agent coordination, and human-in-the-loop checkpoints</li> <li class="break-words text-foreground text-base leading-relaxed">Have experience with agent interoperability and tool protocols (MCP, A2A, AG-UI), control-plane concepts for asynchronous or long-running systems (queueing, retries, checkpointing), and feature-flagging or progressive-rollout systems including reliable kill-switches</li> <li class="break-words text-foreground text-base leading-relaxed">Have experience managing cost and capacity for LLM usage — routing, caching, and reserved-capacity planning with managed model providers</li> <li class="break-words text-foreground text-base leading-relaxed">Are comfortable owning production reliability (SLOs, incident response, on-call) and are security-minded when designing sandboxing, permission scoping, and audit trails for autonomous systems acting on sensitive data</li> <li class="break-words text-foreground text-base leading-relaxed">Have excellent communication and collaboration skills, high agency, a pragmatic build-vs-buy mindset, and are comfortable working in a founding role where shaping the right scope is part of the job</li> <li class="break-words text-foreground text-base leading-relaxed">Are fluent in English</li> </ul> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground"><strong class="font-semibold text-foreground">It would be fantastic if you:</strong></div> <ul class="pb-2 flex flex-col gap-1 list-disc pl-6 text-foreground text-base leading-relaxed"> <li class="break-words text-foreground text-base leading-relaxed">Have experience giving agents richer identity, memory, and knowledge (long-term memory, artifact stores, or RAG pipelines), ideally in partnership with a data platform team, or experience building a feedback loop that turns production traces into evaluation datasets</li> <li class="break-words text-foreground text-base leading-relaxed">Have experience building Kubernetes-native abstractions (CRDs/operators) to manage an agent's lifecycle declaratively, and/or with durable stateful execution engines (e.g. Temporal) for long-running workflows</li> <li class="break-words text-foreground text-base leading-relaxed">Have experience in regulated environments (healthcare, finance, public sector) and with frameworks such as GDPR, HDS, ISO 27001, or SOC 2</li> </ul> <h2 class="pb-2 pt-4 heading-xl text-foreground"><strong class="font-semibold text-foreground">Our stack</strong></h2> <ul class="pb-2 flex flex-col gap-1 list-disc pl-6 text-foreground text-base leading-relaxed"> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Programming languages:</strong> Python, plus comfort with TypeScript/Go for agent SDKs and tool integrations</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Cloud providers:</strong> GCP / AWS / Azure</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Agent orchestration & runtime:</strong> Google's Agent Development Kit (ADK), running as services on our application platform</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Agent protocols:</strong> MCP, A2A, and AG-UI</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Feature flags / progressive rollout:</strong> Flagd (or similar), including the emergency kill-switch</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">GenAI gateway:</strong> LiteLLM (owned end-to-end by this team) — routing, failover, metering, cost attribution, guardrails, reserved-capacity pooling (Azure OpenAI PTUs, Vertex AI GSUs, AWS Bedrock Provisioned Throughput)</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Experiment tracking & model registry:</strong> MLflow</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">LLM evaluation & observability:</strong> Braintrust and Datadog LLM Observability, plus distributed tracing for tool calls and agent decision paths</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Container / Orchestration:</strong> Kubernetes (GKE / EKS), Docker, Helm, Kustomize</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Infrastructure as code:</strong> Terraform</li> <li class="break-words text-foreground text-base leading-relaxed"><strong class="font-semibold text-foreground">Observability:</strong> Datadog</li> <li class="break-words text-foreground text-base leading-relaxed">And any other tool you deem relevant!</li> </ul> <h2 class="pb-2 pt-4 heading-xl text-foreground"><strong class="font-semibold text-foreground">Life at Doctolib Tech</strong></h2> <ul class="pb-2 flex flex-col gap-1 list-disc pl-6 text-foreground text-base leading-relaxed"> <li class="break-words text-foreground text-base leading-relaxed">Our solutions are built on a single fully cloud-native platform that supports web and mobile app interfaces, multiple languages, and is adapted to country and healthcare specialty requirements.</li> <li class="break-words text-foreground text-base leading-relaxed">Our stack is composed of Rails, TypeScript, Java, Python, Kotlin, Swift, and React Native.</li> <li class="break-words text-foreground text-base leading-relaxed">We leverage AI ethically across our products to empower patients and health professionals. Discover our AI vision <a class="break-all font-semibold transition-all duration-200 ease-in-out hover:underline text-highlight hover:text-highlight-400 active:text-highlight-dark" href="https://careers.doctolib.com/ai-careers/" target="_blank">here</a>.</li> </ul> <div class="whitespace-pre-wrap break-words font-normal first:pt-0 last:pb-0 py-1 @sm:pt-2 @sm:pb-[10px] @sm:leading-relaxed text-base leading-relaxed text-foreground"><em>Want to learn more about our tech culture and environment? Visit the <a class="break-all font-semibold transition-all duration-200 ease-in-out hover:underline text-highlight hover:text-highlight-400 active:text-highlight-dark" href="https://careers.doctolib.com/tech-doctolib/" target="_blank">Doctolib Tech site</a>.</em><
Skills and categories
Eligibility checker
Check an offered salary against the published general salary floor for a sponsoring country.
Loading thresholds…
Apply for this role
Checking your session…
Or apply on the company site