Senior Full Stack Developer (Contract)
| Contract | Three-month initial contract for services, with potential to extend at the same rate |
| Day rate | £500 per day, with some flex for the right person |
| Commitment | Three to four days per week |
| Location | Fully remote (UK), with travel a couple of times a month |
| Start date | As soon as possible |
| Closing date | Three weeks from publication |
| Right to work | You must have the right to work in the UK |
About Firehills
Firehills is a consulting and technology firm that works with both private and public sector clients on strategy, organisational design and leadership. We are moving forward with our growth plans and with that we need new talent and skills to deliver our technology strategy.
What we believe
The way most firms approach strategy is often very traditional and doesn’t really respond to the forces that drive and shape our world. We believe that the world is complex, which means it is subject to emergent patterns shaped by dynamic relationships that exist between firms, customers, regulators and others.
Firehills helps companies and public sector organisations understand this complexity in order to make better decisions for growth and impact. We do this in two ways: through consulting projects, and through technology. Our flagship product, Furze, is an AI platform that helps deal-makers and strategy teams think systemically to create new strategies for economic growth.
Why we are hiring
Firehills and Furze are growing fast. Our platform builds structure organisational analysis based on public and private data, and turns a market question into a structured, attributed picture of the organisations in that market and how they connect.
The job now is to mature Furze beyond its MVP into a platform that scales — one that stays fast, accurate and trustworthy as both the data and the client base grow. We’re turning messy, real-world data into intelligence a client can rely on, and standing behind it when they make real decisions on what Furze tells them.
Role purpose
You will own how Furze understands markets (identifying organisations and relationships) and produces data, build across the rest of the platform alongside that, and help us prove that what the AI produces is valid and actionable.
The role sits at the meeting point of three things we care about:
Hard data problems — identity, matching and evidence, at scale.
AI that has to be trusted — not demos, but owning an output a client will make decisions on.
A real product, shipping — live clients, a live roadmap.
What working at Firehills is like
We are a small team but nimble and fast-moving. You will work directly with the partners of the firm, not through layers of management. What we offer is:
A real problem to solve, with a real outcome you can point to.
Direct access to the people running the firm, and to the decisions as they are made.
Ownership of a significant part of a live product, from early on.
A culture that values independent thinking over pedigree, and curiosity over credentials.
No ceremony, and no sprint theatre.
What you will do
Your work will fall across three connected areas.
1. Own how Furze understands markets
Own the pipeline that discovers the organisations in a market and the relationships between them.
Improve the hard core underneath it: deciding when two records are the same organisation, which version of the truth survives over time, and how confident we should be in either.
Build the views that turn the result into market intelligence somebody can actually use.
Own the lane end to end. You will be the person who holds it.
2. Build across the platform
Work across the stack — the web application people use, and the services behind it.
Pick up new areas of the roadmap as they come: using AI to assess against our proprietary role framework, classifying organisations by the role they play in a market, and more.
Make architectural decisions, and be able to defend them.
3. Make the quality provable
Build and extend how we evaluate what the AI produces — datasets, judges, scoring, regression testing.
Work with subject-matter experts to test whether the output is genuinely any good, not just plausible.
Calibrate across models and providers as they change, which they do constantly.
Tell us when the quality isn’t there. Especially then.
How we build
We are AI native. This codebase is built to be worked on with AI agents. We expect you to work this way. We also expect you to be sceptical about it. The value you bring is not that you can generate code quickly. It is that you can tell when what came back is plausible and questionable.
Who you are
You are a senior developer. You have shipped things that people depend on, you have been the one who fixes it when it breaks, and you are comfortable being the most experienced engineer in the room. We care less about where you have worked than about what you have built and how you think.
You are someone who:
Owns problems rather than tickets, and is comfortable with the ambiguity that comes with that.
Builds with AI agents and is rigorous about verifying what they produce.
Communicates clearly in writing, including to people who do not write code.
Says when something is wrong — including when it is your own work, and including when it is ours.
Essential requirements
10+ years of experience as a full stack developer
Senior experience shipping across a modern web frontend and a Python backend. TypeScript and Python are the main languages here.
Experience building with large language models in the critical path — orchestration (custom scripts/loops), prompting, and handling the failure modes — not only calling an API.
Strong SQL, and comfort with relational data and data pipelines. Postgres in our case.
You build with AI coding agents day to day, and you have views about where they fail.
Clear written communication.
The right to work in the UK.
Preferred additions
Entity resolution, record linkage or deduplication at real scale.
Evaluating AI output properly — golden datasets, setting eval standards, regression testing.
Having been the senior engineer in a small team, without a safety net.
Genuine interest in how markets and organisations work.
The offer
Contract: A three-month initial contract, with potential to extend at the same rate.
Day rate: £500 per day. We have some flex for the right person, and we would rather hear your expectation than have you not apply.
Working pattern: Three to four days per week, scheduled by agreement.
Location: Fully remote.
Travel: Ad hoc, usually a couple of times a month, for team time (mostly in London).
Start date: As soon as possible.
How to apply
Please send us two things:
Your CV.
A short cover letter. Keep it short and concise. If you have built or written something you would like us to look at, send the link — we would rather see the thing than read about it.
Send this to rob@firehills.io