All open roles
APIs and web platforms

Full-Stack Platform Engineer

Build multi-tenant TypeScript APIs and the Nuxt portals on top of them, for products where the wrong row reaching the wrong customer is the failure that matters.

Remote, worldwide. Full-time or contract.

We build and run the platforms behind connected products and clinical software. That includes Volt IoT, our own device control plane, and the enterprise portal and API behind the Druid impairment-screening product for Impairment Science.

These are multi-tenant systems with real customers inside them. A route that authenticates a caller but forgets to scope the query is the defect we spend the most effort designing out.

TypeScript API design Postgres Vue and Nuxt AWS Multi-tenant authz

What You Would Work On

  • Build and extend multi-tenant TypeScript APIs over Postgres, and the portals on top of them. Ours run on Hono, Drizzle and Nuxt, though the shape of the work matters more than the libraries.
  • Work on organization scoping, which is the part of a multi-tenant API that decides which rows a caller can see. In our largest product that boundary is applied across hundreds of routes and every one of them has to get it right.
  • Identity and access work, covering role and permission models, single sign-on, directory provisioning, and multi-factor.
  • Schema changes against databases carrying live customer data, using expand and contract for anything destructive, and hand-written SQL when a generator would get it wrong.
  • Keep types honest from the database to the browser. Our portals derive their API types from the route definitions, so a change in a response shape fails CI instead of a page.
  • Device-facing platform surface, covering enrollment, telemetry ingest, command queues, and live device state over MQTT and websockets.
  • Billing and usage metering through Stripe, background job workers, data exports, and the third-party integrations a product accumulates as it grows.
  • Deploys across AWS, a self-hosted PaaS, and Cloudflare Pages, including reading back what shipped instead of trusting a green dashboard.

What We Look For

  • Several years writing production TypeScript on both sides of an API, with a product you can point to and describe your part in.
  • Real Postgres experience, including migrations you've run against data you couldn't afford to lose.
  • You've worked on a multi-tenant system and can describe how you kept one customer away from another customer's data.
  • Comfort with a modern component framework. Most of our portals are Vue, though React experience transfers fine.
  • You write tests where they earn their place, and you can say which ones those are.
  • You're careful about authorization. Reviewing your own routes for who may read and write what is a normal part of the job here.

Nice to Have

  • NestJS and Prisma, which one of our platforms runs on.
  • Hono, Drizzle, Zod, and OpenAPI generated from route definitions.
  • Playwright end to end suites and Vitest.
  • SAML, SCIM, or WebAuthn implementation experience.
  • Cloudflare Workers, Pages, and D1.
  • Working inside a SOC 2 program, where audit trails and access review are part of the design.

Nobody has all of these. If you have most of the section above and two or three of these, we'd like to hear from you.

How Hiring Works

You send a resume and a note. If it looks like a fit we'll have a call about the work you've done, then a longer technical conversation with the people you'd be working beside. We don't ask for unpaid take-home projects.

Before you write

The most useful thing you can send is a specific account of something you built and what was hard about it. Our own work is described on these pages if you want a sense of what we mean.

Apply for Full-Stack Platform Engineer

Attach a resume and tell us about work you've done that's close to this. A few paragraphs is plenty.

We ask up front so neither of us spends three conversations finding out we're far apart.

No file chosen yet.

PDF or Word, up to 8 MB.

A person reads every application. We'll be in touch if there's a fit.