Senior Full-stack Engineer

Global
Product Engineering
Full Time

About DutyDeclared


DutyDeclared is a UK customs declaration and trade-intelligence platform. We help customs brokers and traders navigate HMRC's Customs Declaration Service (CDS) without drowning in complexity — turning slow, error-prone import paperwork into fast, accurate filings. We're a small team doing hard, meaningful work, and we're building AI into the core of how the product thinks.

Who We're Looking For

This role is as much about how you work as what you know. We want someone who:
- Takes ownership. You see something broken or missing, you fix it — you don't wait for a ticket or a nudge.
- Ships. You have a bias for getting things in front of users. You know the difference between done and perfect, and you choose done.
- Is genuinely curious about the domain. Customs and trade compliance isn't glamorous — but you find it interesting enough to care about getting it right, and it shows in your work.
- Keeps things simple. You reach for the simplest solution that works. You don't build infrastructure for problems you don't have yet.
- Has low ego. You hold your opinions confidently and push back when it matters — but you're not precious about being right. The best idea wins.
- Communicates directly. You say what you think. In a small team, clarity beats politeness.

If that sounds like you, here's the technical side.

What You'll Build
- AI-powered features end-to-end: declaration pre-fill, document parsing/extraction, trade classification, and broker-copilot workflows.
- Reliable LLM pipelines using tool use, structured outputs, and multi-step agent patterns.
- TypeScript/Node.js backend services integrating with HMRC CDS APIs and our data models (PostgreSQL/Prisma).
- React/Next.js UIs built on our component design system.
- Evals and monitoring to track model behaviour and catch regressions in production.

What We're Looking For

Must have
- 3–6 years full-stack experience, strong TypeScript across React and Node.js
- 1–2+ years building with LLM APIs in production — tool use, RAG, structured outputs, or agents
- Solid backend fundamentals: REST, relational databases, auth
- Ability to scope and ship features independently

Nice to have
- Next.js, Prisma, or GCP
- Python for data-adjacent work
- Vector databases (pgvector, Pinecone, Weaviate)
- Experience in regulated domains — legal, finance, logistics, govtech
- LLM eval tooling (Braintrust, LangSmith, or custom)

How We Hire
A light process: a short intro chat, a focused take-home (a small AI + full-stack build — we judge the outcome, not the hours), and a debrief with the team.

This is a fully remote role, UK timezone required. Sound like a fit? 

Send me your LinkedIn profile via DM.

Apply for this role

Please fill out the form below. We read every application.
Uploading...
fileuploaded.jpg
Upload failed. Max size for files is 10 MB.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Logo of DutyDeclared
LIVE
Joining Time
2-4 Weeks
Tech Stack
React, Next.js, TypeScript, Tailwind
Interview Process
Recruiter Screen
Technical Interview
Founder Chat
Apply Now
Have questions?
Contact our team directly at join@dutydeclared.com