Senior Software Engineer; AI & ML
-
Software Development
Job Description & How to Apply Below
Location: City Of London
Senior Software Engineer (AI & ML)
Department: Data & AI
Employment Type: Permanent
- Full Time
Location: UK
- London
Reporting To: Takashi Nakamura
DescriptionWe’re building AI systems that sit at the heart of how CFC makes complex underwriting decisions. Our Data & AI unit is developing autonomous, multi-step agents that reason over unstructured data, assess risk and deliver real business outcomes, creating the kind of complex engineering problems where great software engineering really matters.
Making agentic AI work reliably in production means solving challenges traditional software doesn’t always face: non-deterministic behaviour, tool failures, long-running workflows, high-stakes decisions and outputs that need to be observable and auditable. That’s where you come in.
As a Senior Software Engineer (AI & ML), you’ll help shape how these systems are designed and built, working across agent orchestration, APIs, tool integrations, durable state, guardrails, observability and cloud infrastructure. You’ll partner closely with Senior Machine Learning Engineers on the same agents, bringing the engineering depth needed to make them robust, testable and maintainable in production.
About the role- Design, build and run production AI agents that automate multi-step underwriting decisions over unstructured data.
- Build the agent runtime
, including orchestration, durable state, retries and long-running workflows that recover cleanly from failure. - Develop the tools, APIs and data services that agents call, creating clear contracts, predictable failure modes and full auditability.
- Engineer guardrails, human-in-the-loop checkpoints and fallbacks for high-stakes automated decisions.
- Instrument, monitor and troubleshoot agents and services in production, including tracing, cost, latency and decision logs, working with ML engineers to turn those insights into evaluations and improvements.
- Help drive system design and architectural decisions for our agents and the services around them.
- Design and evolve the data models and database schemas supporting submissions, agent runs, decisions and audit trails.
- Provision and manage cloud infrastructure through Terraform and contribute to a high production standard across agent-generated code and tests.
- Work closely with business, product and engineering teams to set delivery cadence, manage expectations and make pragmatic decisions about where additional engineering quality adds the most value.
- Support the development of other engineers through code reviews, best-practice guidance and knowledge sharing
We’re looking for someone who combines strong software engineering fundamentals with hands‑on experience taking agentic AI beyond prototypes and into production.
You’ll bring:
- Hands‑on experience building LLM‑based agents or agentic systems in production
, ideally using orchestration frameworks such as Lang Graph or Lang Chain
, or equivalent systems you’ve built yourself. - A strong understanding of how agents fail in the real world, from non-determinism and tool failures to runaway loops, cost and latency issues, and how to engineer around them.
- 5+ years’ professional software development experience in Python or another backend language such as Go, Java or C#. Our stack is Python, so you’ll need enough working knowledge to transfer your skills quickly if it isn’t already your main language.
- Strong experience with asynchronous and concurrent programming
, alongside a rigorous approach to unit and integration testing. - Day-to-day experience delivering software with AI coding agents
, while maintaining a high bar for the code they produce. - Experience designing systems end to end, including service boundaries, data flows and failure modes, with the judgement to make and explain…
Position Requirements
10+ Years work experience(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
View / Apply for Jobs
Matching My Jurisdiction