causaly - Staff Software Engineer
Requirements
• ◆ Significant backend engineering experience in TypeScript and Node.js. • ◆ Experience building LLM-backed systems that run in production, with informed views on how they fail. • ◆ Experience designing and operating distributed systems. • ◆ Practical experience of correctness under partial failure: idempotency, at-least-once delivery, safe retries, and backwards compatibility between services that deploy independently. • ◆ Solid understanding of relational databases, including schema design and safe migration. • ◆ Clear technical writing — you can produce a design document that a reviewer can act on. • ◆ A product mindset. You are motivated by the outcome for the user, not only by the system. • ◆ You measure before you optimise, and you revert a change that does not hold up. • ◆ Durable execution or workflow engines (Restate, Temporal, Inngest), or a comparable system you have built yourself. • ◆ Python and LLM application frameworks (FastAPI, LangChain, LangGraph). Our GenAI service is written in Python and you will work in it. • ◆ Observability and LLM instrumentation (OpenTelemetry, Langfuse). • ◆ Multi-tenant SaaS where tenant isolation is a design constraint. • ◆ Infrastructure as code (Terraform, Kubernetes). • ◆ Search and retrieval at scale (Elasticsearch, vector search, knowledge graphs). • ◆ Functional programming, either in TypeScript (fp-ts) or in a functional language. • ◆ Machine learning research. This is a systems role built around models rather than a modelling role. No model training, fine-tuning or publication record is expected. • ◆ Frontend specialism. You will work in React, but the role is weighted towards backend and platform and we are not looking for a frontend specialist. • Technology Stack • The list below is indicative and not exhaustive of the technologies we use at Causaly. We do not expect experience with all of it, but you should be comfortable learning the parts you have not used. • Languages: TypeScript, Node.js, Python • Backend: Apollo GraphQL, Zod, fp-ts, FastAPI • Frontend: React • Workflow & messaging: Restate, Redis Streams, Cloud Tasks • Data: PostgreSQL, Elasticsearch, Redis, MongoDB • GenAI: LangGraph, OpenAI • Observability: OpenTelemetry, Langfuse, Datadog • Cloud & infrastructure: Google Cloud, Azure, Kubernetes, Terraform, ArgoCD, Docker • Tooling: Git, GitHub Actions
Responsibilities
• ◆ Workflow orchestration. Design and evolve the workflow definition model: control flow, fan-out, conditional execution and data passing between steps, plus the static validation that rejects an invalid workflow before it runs. • ◆ Durable execution. Build the engine that runs workflows, including checkpointing and resumption after failure, retry and abandonment policies, and idempotency guarantees. • ◆ Monitoring, tracing and cost attribution. Instrument runs that cross several services and two languages, so that latency and token spend can be attributed to individual steps. These figures feed pricing decisions. • ◆ LLM integration. Structured outputs, guardrails and retries, citation integrity across steps, and deciding where deterministic code should replace a model call. • ◆ Architecture and technical leadership. Write the design proposal, break a large change into shippable increments, implement the hardest parts and own the result in production.
Benefits
• 🩺 Private medical insurance • 🤓 Personal development budget • 🧘 Individual wellbeing budget • 🌴 25 days holiday plus bank holidays • 🥳 Your birthday off! • 🚀 Potential to have real impact and accelerated career growth as a member of an international team that's building a transformative AI product.
Apply in one click
Upload My Resume
Drop here or click to browse · Tap to choose · PDF, DOCX, DOC, RTF, TXT