Skip to content

Open nowPosted 3 days ago

Senior AI Software Engineer

extrac.ai8 open roles

Where
London
Work mode
Hybrid
Get the CV for this job

From $25 per CV, paid once. No subscription.

Your applicationOpen nowSenior AI Software Engineerextrac.ai · London
  1. YouYes, apply to this one.

  2. CV RocketCV written for this posting.

  3. 25 readersRecruiter, hiring manager, skeptic. Round after round.

  4. CV RocketApplied on extrac.ai's own form.

The reply lands in your private mailbox

3×more interviews than doing it yourself with ChatGPT.

The clock on this job

Early applications get read.

7.8% of postings close within 7 days. Measured by our own scanner across the market.

Share of postings closed within
  1. 1.7%1 day
  2. 3.5%3 days
  3. 7.8%7 days
  4. 14.6%14 days
  5. 34.1%30 days
This job: posted 3 days ago

The posting

ABOUT EXTRAC

ExTrac is a decision intelligence company used by governments, defence organisations, financial institutions, and corporates operating in complex, fast-moving environments. Our capabilities fuse curated data sources, domain-specific AI, and deep human expertise to transform information overload into clear, actionable foresight.

Our ambition is to become the analytical backbone that organisations rely on when geopolitical uncertainty becomes an opportunity or a strategic risk. More at extrac.ai http://extrac.ai.

THE ROLE

We are looking for a Senior Software Engineer to join ExTrac's AI team, building Co-Analyst and the analytical AI features around it.

Co-Analyst is a user-facing multi-agent system that works alongside intelligence analysts to research and write reports. A planning loop decomposes an analyst's question, fans work out to sub-agents, and assembles the results into a report where every claim traces back to the chunk of source it came from. Underneath sits vector search over a large unstructured corpus, across multiple languages and media types.

The agent work is the centrepiece but not the whole job. In a single quarter the work spans agent orchestration, retrieval, graph analytics, and long-running streaming pipelines, alongside the services and databases underneath them. You will own services end to end across a Python and Go codebase, working alongside the data team who own the ingestion pipelines and a research-focused ML team who train and evaluate the models we integrate and serve. The loop is short: product brings an idea, often recent and unproven, and our job is to spike an implementation and take it to a production feature. New features land close to weekly.

This hire exists to raise the AI team's throughput on hard problems, with an engineer who brings the systems depth to take an AI capability from something that works to something analysts can rely on.

WHAT THE JOB INVOLVES

Agentic and analytical AI features

- Build and improve the agent loop itself: context assembly, tool selection, and sub-agent orchestration.

- Build the analytical AI features that sit alongside it, from network construction through to the summaries analysts read.

- Prove that changes are improvements, running experiments against live analyst traffic behind feature flags.

- Agree what "better" means for a capability before shipping it, and make the call honestly when the evidence says a promising approach is not working.

- Find workable approaches where no established pattern fits, on a dataset that rarely arrives clean.

- Work with embeddings as more than a retrieval concern. The same vectors drive network construction and community detection.

- Work within a model-agnostic design, swapping models and embeddings on the back of the ML team's evaluations rather than being locked to one.

Service design and delivery

- Take an ambiguous problem, gather requirements, write a technical design, and ship to production with minimal oversight.

- Own services end to end, including consolidating or decommissioning what they replace.

- Design APIs used by both internal teams and customers, and hold them to clear contracts and sensible versioning as the number of consumers grows.

- Treat the storage layer as a design concern rather than an implementation detail: schema, indexing strategy, and access patterns, across relational, document, and vector stores.

- Contribute to and lead system design and architecture decisions.

Production engineering

- Own supporting services end to end across Python and Go: design, build, deploy, operate.

- Hold agent workflows to production standards for latency, cost, and reliability, in a system where non-determinism is a given.

- Build and operate long-running streaming pipelines, including the caching and recovery behaviour that makes them survivable.

Working with analysts, product, and the ML team

- Work directly with the analysts who use our products, turning what they hit in practice into changes in the system.

- Iterate quickly against a live stream of product requests, flagging where they collide with longer-horizon capability work.

- Partner with the ML team on agentic approaches, taking proven concepts to production and solving the engineering, performance, and reliability problems a research implementation does not have to.

- Integrate and serve the models they train, and build the production infrastructure their evaluation frameworks run on.

YOU SHOULD APPLY IF

- You have built and operated production backend systems, and you want to keep doing that. You know the difference between something that demos well and something that holds up under production load, latency, and cost.

- You will spend more of your time in Python and Go services, databases, and APIs than in a prompt file.

- You can operate with a high degree of autonomy. You will be trusted to lead projects, make decisions, and drive outcomes. We work on open-ended problems with no established answer, and when the obvious approach fails you generate alternatives rather than stopping.

- You have opinions about agentic frameworks and are comfortable not using one. Experience with them is useful, but we build most of our own orchestration, because off-the-shelf abstractions have not survived our requirements around evaluation, control, and production performance.

- You can take a recent technique or paper, spike an implementation, and give a clear recommendation on whether it is worth taking further. You are as comfortable arguing to kill something as to ship it.

- You do not trust a change until you have measured it. Reaching for the evaluation is instinct rather than afterthought.

- You treat quality, security, and observability as engineering fundamentals rather than optional extras, and you make the case for addressing technical debt rather than living with it.

- You raise the bar for the engineers around you in ways they would recognise: pairing on problems outside your own project, leaving reviews people learn from, and writing things down for the next person.

- You want to work on things that matter. Our software sits underneath decisions taken by governments, defence organisations, and institutions operating where being wrong or late carries real consequences.

WHERE THIS ROLE CAN TAKE YOU

- Deepen your ownership. Strong performance means larger sections of Co-Analyst, more architectural say over how the agent system evolves, and more influence over which ideas we pursue rather than only how we build them.

- Build the engineering practice for a class of system nobody has settled yet. There are established patterns for running web services and for training models. There are none yet for operating agentic systems in production: controlling cost and latency, making non-deterministic behaviour dependable, and knowing when a change is genuinely an improvement. You will be working those out rather than applying them.

- Breadth rather than a narrow track. The work follows the problem, which means agent orchestration one month and pipeline, retrieval, or infrastructure work the next. Engineers here have the opportunity to build depth across several areas rather than being funnelled into one.

- Take on a different class of problem. Making our systems work inside FedRAMP environments is a major upcoming project, and engineering under that kind of constraint is a skill set that stays with you.

- Progress without changing track. ExTrac values the IC and management paths equally: Staff Engineer and Engineering Manager sit at the same level, and taking on reports is not the price of progression.

REQUIREMENTS

Due to the nature of our work and the clients we support, applicants must be eligible to obtain UK security clearance. We are currently only able to consider applicants who are nationals of a NATO member state, Australia, or New Zealand.

- 4+ years of professional software engineering experience, with demonstrated ability to stand up production-grade services with comprehensive test coverage, and experience owning features end to end.

- Proficiency in building services in Python, with working knowledge of Go or the ability to pick it up quickly.

- Experience building and operating agentic systems, LLM applications, or production retrieval that real users depend on.

- Solid understanding of distributed systems, databases, and software engineering patterns.

- Experience writing performant asynchronous code that scales under real workloads.

- Experience with cloud infrastructure and infrastructure as code, and with the CI/CD pipelines around them.

- Experience with feature flags and trunk-based deployment.

- Comfortable being handed a symptom rather than a diagnosis. Given a suspected memory leak, you would profile it, find the cause, and fix it.

- Able to take a PRD and scope a technical design from it, pushing back where the proposed approach does not hold up. Equally, you look for a way through rather than concluding something cannot be done.

- Strong communication and collaboration skills. Comfortable writing clear technical documentation and discussing requirements with colleagues from engineering and the wider team.

- Breadth across the stack: improving deployment pipelines, understanding database behaviour, and a genuine interest in security and AI guardrails. You pick up unfamiliar tools quickly rather than needing prior expertise in a specific one.

- An interest in validating analytical outputs and in taking analyst feedback into requirements discussions, rather than treating requirements as someone else's problem.

Desirable

- Experience with retrieval systems and large-scale vector database performance (Elastic).

- Experience with graph or network analysis at scale.

- Experience building retrieval or analysis that works across multiple languages.

- Experience with streaming pipelines and search infrastructure.

- Experience operating multi-tenant systems where data isolation is a hard requirement.

- Experience working in compliance-constrained environments. A significant upcoming project is making our systems work within FedRAMP environments.

INTERVIEW PROCESS

- Initial Intro Interview with Hiring Manager - 30 Minutes

- Technical Assessment - 1 hour

- Competency-based Interview - 1 hour

- Founder interview - 30 Minutes

BENEFITS

- Competitive salary based on skills and experience.

- A generous benefits package, including Private Medical Health Insurance and enhanced pension contributions.

- Enhanced parental leave and a workplace nursery scheme.

- £500/year education budget with more expensive items (like conferences) covered with manager approval.

- 33 days of leave across the year inclusive of bank holidays.

- Flexible working. The team is typically in our central London office two days a week, and you are welcome to come in up to five.

ExTrac AI provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, colour, religion, sex, national origin, age, disability, genetic information, sexual orientation, gender identity, or gender expression. We are committed to a diverse and inclusive workforce and welcome people from all backgrounds, experiences, perspectives, and abilities.

ExTrac AI is committed to a fair and transparent hiring process. We confirm that this advertisement is for an active, existing open role within our organisation. Please be advised that we may use artificial intelligence-driven tools to assist our recruitment team in screening, assessing, and selecting candidates for this position but all hiring decisions will be made by a member of our team.

From $25, paid onceGet the CV for this job

What happens when you press

One press. We do the rest.

  1. A CV for this posting

    Written against extrac.ai's own wording, from every piece of relevant proof in your profile.

  2. 25 readers review it

    Recruiter, hiring manager, skeptic and more read every draft, round after round. You get the best round.

    The review screen in CV Rocket: how each CV was read, round by round.
  3. We apply on extrac.ai's form

    Our application engine gets through the hardest forms there are. Where a question needs you, AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

    An application in CV Rocket: every answer filled in on the employer's form.
  4. Every reply, sorted

    extrac.ai's answer lands in your private mailbox, and we classify it on arrival: interview, question, rejection.

    The CV Rocket inbox: each employer reply classified as an interview, an action or a rejection.
  5. Reply with AI

    AI helps you write the email, checks it and sends it. We show you whether the recruiter read it.

  6. The interview in your calendar

    Full integration with your calendar. The invitation goes straight in.

    An interview invitation in the CV Rocket inbox, added to the candidate's calendar.
Get the CV for this job

From $25 per CV, paid once. No subscription.

Why it works

3×

more interviews than doing it yourself with ChatGPT.

ChatGPT writes a CV and never learns what happened to it. We see every reply. For each CV we know:

  • How it was written, and how the review scored it
  • When we applied, and how long after the posting went up
  • Which posting, which company, which city
  • Who got the interview, and who heard nothing

That is how we know which CVs get called.

Get the CV for this job

From $25 per CV, paid once. No subscription.

The numbers game

More applications. More interviews.

Every application goes out with its own CV, written for that posting and paid once. Send enough of them and the law of large numbers finds you the job.

By hand5–10
With CV Rocket100
applications a day

Nearby

Live postings like this one

Same employer first, then the same role elsewhere.

Before you press

Straight answers

Get the CV for this job

From $25 per CV, paid once. No subscription.

What if my background isn't good enough?

We make the most of the background you have. The CV uses every piece of relevant proof your profile holds, and one of the 25 readers reads your whole profile and flags what the CV left out.

Do you really apply for me?

Yes, on the employer's own form, the hardest ones included. Where a question needs you, you answer it right there and AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

Is it a subscription?

No. You pay once per CV, from $25. Every application goes out with its own CV, written for that posting.

One job. One CV.
Paid once.

Pick the posting you want. We write for it, apply for you and catch the reply.

Get the CV for this job

From $25 per CV, paid once. No subscription.