Services · Engineering
API Development
Category
Engineering
Starts with
A scoping call
Status
Booking 2026
(01) Our take
An API is a contract between your current self and every future self who integrates with it. The ones we admire most are the ones that make that contract easy to trust: types you can import, errors that say what went wrong, versioning that doesn’t punish consumers, and documentation that doesn’t lie because it’s generated from the same source the service runs on.
We design APIs to match the problem, not the industry trend. REST over HTTP is still the right answer for most public-facing and partner APIs; the tooling, the caching story, and the hiring depth all favour it. GraphQL earns its place when the clients genuinely benefit from co-located field selection — multi-platform apps with varied read patterns, for instance, or rapidly iterating frontends where over-fetching is a real cost. tRPC is our pick when both ends of the wire live in the same monorepo and type sharing is the product. We don’t have a house favourite; we have a house process for picking.
On the runtime side, our default is Node with Hono for new services — small, fast, TypeScript-first, and it fits edge runtimes cleanly when we want latency close to users. For services with hard latency budgets or specific concurrency shapes, we reach for Go. For the rare case where the problem genuinely needs Python — ML inference, scientific libraries — we’ll use FastAPI and integrate cleanly with the rest of the stack.
We ship APIs with OpenAPI specs, with generated client SDKs when there’s an audience for them, with rate limits and circuit breakers from day one, and with observability tuned to the signals that matter. The goal is that six months after we leave, a new engineer joining your team can read the docs, run the service locally, and ship a new endpoint by end of week.
(02) What we build
Typical work
- REST APIs (OpenAPI-documented, versioned, SDK-generated where it helps)
- GraphQL APIs (schema-first, persisted queries, federation where earned)
- tRPC services for monorepo-internal contracts
- Partner and integration APIs with auth, rate limiting, webhook delivery
- BFF (backend-for-frontend) layers that shape data for specific clients
(03) Is this for you
When to pick this
- Your product has multiple clients — web, mobile, partners — and the current API was designed for one of them.
- You’re exposing an API to external developers and the current surface is an embarrassment you’d rather not ship.
- You’re breaking a monolith apart and need the seams designed by someone who’s done it before.
- You need a backend, your team does frontend, and you’ve decided not to hire for that shape yet.
When not to pick this
- You have one client, one use case, and the current “API” is three Next.js route handlers that work fine. Don’t build ceremony you don’t need.
- Your team has the seniority to design this internally and what they need is time, not a vendor.
(04) Engagement shape
How we engage
6–12 week engagements for a focused API build. Longer for federation or multi-service migrations. Often paired with a frontend or mobile engagement running in parallel.
(05) What you walk away with
Deliverable
The headline artefact
A documented, versioned API in production — with generated clients, observability, and the runbook for operating it.
Signature tools we reach for
(06) Pairs with
Related services
Services we often run alongside API Development, or that make sense as the next engagement after it.
Start a API Development engagement.