Build the API, the queue and the database work behind enrichment runs and the tools agents call.
The backend is where nearly all of the product's promises are kept. A contract is validated here, an enrichment run is scheduled and resumed here, a receipt is written here, and a safety exclusion is enforced here, in the SQL, where a caller cannot talk their way around it.
You would work across the API server and the database: endpoints generated from an OpenAPI contract, background jobs on a Postgres-backed queue, row-level security that keeps one customer's workspace out of another's, and a query path that filters, ranks and pages results for an agent calling a deployed tool.
This is a good role if you like systems that have to be correct rather than clever, and if you want to learn the AI parts from the data side rather than the prompt side.
What you'd do
- Write endpoints against an OpenAPI contract, with validators generated from the contract rather than hand-written
- Build background work on the job queue: enrichment runs that resume where they stopped, embeddings that are never computed twice
- Write the SQL that filters, ranks and pages results, and the row-level security that keeps one workspace out of another's data
- Ship tests with the feature: unit, database-backed, and end to end against a real app and queue
- Help keep the API honest: if the spec and the route disagree, the spec is the bug
What we need
- Two or more years writing backend code that ran in production
- Comfortable with SQL beyond an ORM's query builder: joins, indexes, transactions
- TypeScript or another typed language, and a willingness to be strict about types here
- You can write a test that fails for the right reason before you make it pass
- You ask when a requirement is ambiguous rather than guessing and moving on
Nice to have, not required
- Worked with a job queue, or anything with at-least-once delivery and idempotency
- Exposure to OpenAPI, code generation, or contract-first API development
- You have had to make an integration backwards compatible
How we work
- Small team, thin slices, shipped weekly. Nothing sits on a branch for a month.
- Reviews are real. Every feature ships with its tests, and a bug found in review is cheaper than one found by a customer.
- Safety-critical means the boring answer usually wins: fail closed, keep the receipt, don't guess.
- We only claim what ships. That applies to the product, the roadmap and the offer letter.
How hiring works
- 1 A 30-minute call about something you've built and what was hard about it.
- 2 A working session on a real problem from this codebase. You can drive, or we can pair.
- 3 A conversation about how you make decisions when the evidence is thin.
- 4 References, then an offer. We aim to answer within a week at every stage.