Senior Python Engineer
SKILLS
FULL DESCRIPTION
Insurance isn’t the first industry most engineers think of when they imagine cutting-edge AI work. That’s exactly why this role is interesting.
[Employer hidden — view at passion-project.co.uk]’s Data & AI unit is building production agentic systems that automate complex underwriting decisions - not chatbots, not copilots bolted onto legacy workflows, but autonomous multi-step AI agents that reason over unstructured data, assess risk, and drive real business outcomes. We’re using frameworks like LangChain to orchestrate LLM-driven services that sit at the heart of how the business operates. The problems are genuinely hard: ambiguous inputs, high-stakes decisions, and the kind of domain complexity that makes for satisfying engineering.
We’re also fundamentally rethinking how we deliver software. We’re moving toward an agentic-first development model - using AI agents not just in what we build for the business, but in *how* we build it. The goal is to multiply engineering delivery by an order of magnitude: not by cutting corners or generating throwaway code, but by designing robust systems and processes that let agents handle well-defined work while engineers focus on architecture, design, and the problems that actually require human judgment. This is a deliberate, engineering-led approach. We care about code quality, testability, and maintainability - the agent-generated code meets the same standards as everything else.
This is a hands-on Senior Engineer role with genuine technical leadership scope. You’ll shape the architecture of production microservices, own system design decisions, and work at the intersection of traditional software engineering and applied AI. You’ll collaborate closely with engineers, data scientists, and product managers in a team that’s small enough for your decisions to matter and ambitious enough for the work to stay interesting.
About the role
- Design, develop, and maintain Python microservices powering data enrichment pipelines, modelling services, and agentic underwriting workflows.
- Lead system design and architectural decisions - you’ll influence the technical direction of both new services and the evolution of existing ones.
- Build and orchestrate AI agent services using LangChain and related frameworks, designing reliable patterns for LLM-driven decision-making in production.
- Provision and manage cloud infrastructure using Terraform, ensuring resilient and scalable deployments across Azure.
- Build and maintain APIs (primarily FastAPI) to expose enriched datasets, model-generated insights, and agent outputs to the wider business.
- Contribute to our agentic-first delivery approach - helping define how AI agents integrate into our development workflow while maintaining rigorous engineering standards.
- Translate technical specifications into clean, testable, and scalable production code.
- Work closely with cross-functional teams - engineers, data scientists, product managers - to deliver features on time and to a high standard.
- Write unit and integration tests to maintain reliability and service correctness.
- Monitor, troubleshoot, and continuously improve production services.
- Produce clear, structured documentation for systems, architecture, and processes.
- Mentor junior engineers through code reviews, best-practice guidance, and knowledge sharing.
About you
Engineering fundamentals
- 6+ years of professional Python development, with a track record of writing clean, maintainable, high-quality code.
- Strong experience designing and documenting RESTful APIs with FastAPI or Flask.
- Solid grasp of testing practices and CI/CD pipelines, including writing YAML-based workflows.
- Strong understanding of asynchronous programming, containerised deployments (Docker), and modern service architectures.
- Proven experience maintaining and supporting business‑critical solutions in live production environments, ensuring reliability and continuity of service.
System design and architecture
- Proven experience leading system design, making sound architectural trade-offs, and guiding technical direction.
- Experience designing and building distributed, asynchronous microservices using message brokers (e.g., Azure Service Bus).
- Ability to assess when to implement simple versus more complex solutions - balancing scalability with pragmatism.
Infrastructure and cloud
- Hands-on experience with Infrastructure as Code, particularly Terraform.
- Strong understanding of cloud platforms - Azure preferred, AWS also relevant.
AI and LLM engineering
- Experience designing or building services that orchestrate AI agents using frameworks like LangChain.
- Interest in the evolving space of agentic software development and how LLMs can be used to amplify engineering delivery without compromising quality.
Working style
- Clear, consistent communicator - comfortable collaborating in remote and asynchronous environments.
- Skilled at working independently, taking full ownership of services, and contributing effectively to shared codebases.
- Strong opinions, loosely held. You care about getting things right but you’re pragmatic about trade-offs.
Nice to have
- Experience with Databricks.
- Knowledge of the insurance domain (though we don’t expect it - the domain is complex and that’s part of what makes the engineering interesting).
Why This Role
Most AI engineering roles right now involve wrapping an API call in a web app and calling it a product. This isn’t that.
You’ll be building systems where AI agents make consequential decisions in a regulated industry, which means the engineering has to be solid - the architecture thoughtful, the testing thorough, the failure modes understood. You’ll also be part of shaping how a growing engineering team uses agentic tooling to fundamentally change how it delivers software - not as an experiment, but as a core part of how we work.
If you’re the kind of engineer who wants to work on hard, real problems with production stakes - and you’d rather build carefully engineered agentic systems than ship demos - we’d like to hear from you.