Skip to content
Ankit Hans

Tessell · Product Engineer — Developer Experience · 2025 — Present

Spectra

Cloud-native Postgres with instant provisioning and copy-on-write branching. I owned the developer experience — the Project → Branch → Operation model, the console, the SQL workbench, and CLI/API parity.

Spectra — representative illustration
representative — abstracted, not the real product

The problem

Provisioning a database is still slow and ceremonial. Branching one — getting a full copy of production data to test a migration against — is usually a multi-hour ordeal, if it's possible at all. Spectra's bet: make Postgres feel like git. Instant provisioning, copy-on-write branching, serverless start/stop economics.

The hard part isn't only the engine. It's the experience — making a powerful primitive feel obvious to a developer at 11pm shipping a migration.

What I owned

I led the developer experience for Spectra: the conceptual model, the console, and the surfaces developers actually touch.

The mental model

I authored the DX research that defined the Project → Branch → Operation language — where branches are the connectable database surfaces — and mapped the ten core product flows, CLI/API parity, failure recovery, and the agent/CI branch workflows that come with treating databases like code.

Project
The logical home — config, members, environments
Branch
A connectable database; created copy-on-write from another
Operation
An action on a branch — query, migrate, resize, snapshot

The console & workbench

I built the Spectra console prototype around those flows: a context-aware rail, project and branch creation drawers, connection snippets, a SQL editor, a table browser, monitoring, and infrastructure setup/resize. Underneath, I created reusable database-console primitives — a schema browser and a psql-style data grid — and improved the shared design-system + portal layout they sit on.

spectra — copy-on-write branching model
Representative: copy-on-write branches forked from a project trunk

Making it fast to develop on

Multi-app frontends are painful locally. I built the local dev loop — Make targets, a single-origin proxy, and rebuild/sync scripts — so the whole console could be developed against real services without fighting the toolchain.

The targets

The experience was designed around aggressive velocity numbers:

provision from pre-warmed pool
<1s
full-data branch creation
<5s
schema-only branching
sub-second

What I took from it

Developer experience is product surface, not polish. The model you choose — Project, Branch, Operation — decides whether a powerful engine feels like a superpower or a footgun. I learned to design the words before the screens.

Next — Uplauz