Software Engineer, backend
The database is the authorization boundary. If that sentence interests you, read on.
Why this role exists
The product has real customers and a growing engineering surface. This role is about doubling the depth of the team building it, and working directly on the architecture rather than around it.
What you will do
-
Build the parts that hold the product up.
Data model, permissions, the async pipeline, the retrieval layer.
-
Work directly with Roger.
No layer between you and the person making architectural decisions.
-
Talk to customers.
Engineers here are on calls with the agencies using what they built.
-
Have opinions.
Several of the decisions in the stack are documented and defended. If you think one of them is wrong, say so in the interview.
The stack
Language. TypeScript, pnpm monorepo, Node 22 or later.
App and API. Next.js with React 19 and the App Router, Server Components, deployed to Cloudflare Pages and Workers.
Data and auth. Supabase Postgres. PostgREST for CRUD, RLS for every permission, ltree for the org hierarchy, JSONB for the dynamic parts.
AI. pgvector in the same Postgres for semantic search and retrieval. A provider-agnostic LLM client with fallback chains.
Async. Cloudflare Queues and Upstash QStash for summarisation and bulk vectorisation.
UI. Tailwind 4, shadcn, and server-driven UI where layouts are stored as JSON specs in the database, so web and mobile stay in step.
Tests. Vitest and Playwright.
There is no separate backend service. Business logic lives in Server Components and route handlers at the edge, and in Postgres itself. RLS policies, views, and a substantial amount of PL/pgSQL. The database is the authorization boundary, including for AI agents.
If you think most application code is a thin layer over a database that should have been enforcing its own rules, you will enjoy this.
What we are looking for
You have built and run something in production that you were responsible for when it broke.
You are comfortable with SQL as a place where logic lives, not only as a place where rows are stored.
You have shipped without a QA team and without a platform team.
What this role suits
-
Range over specialism.
You will touch the edge, the database, the queues and occasionally the frontend. If you like owning a vertical slice end to end, this is that.
-
Working closely.
For a while it is you and Roger, which means every architectural conversation is a two-person conversation.
-
A codebase still being shaped.
Some of it is eighteen months old and some of it is eighteen days old. Plenty is still yours to decide.
Compensation
Salary and equity, benchmarked to where you are. We will tell you the range on the first call.
Remote, genuinely anywhere. No timezone requirement.
Send your CV and a few lines on why. Julio or Roger reads every one, and you will hear back within 48 hours.
Button did nothing? Email careers@recruitwithsignals.com directly.