Backend and APIs

Data model, REST and GraphQL, queues, load, migrations. For teams that already have a frontend or a mobile app, and for systems that have hit the limits of their database.

NODE · GO · RUST

A backend written in a hurry works right up to the first real load. Database queries take seconds, background jobs block responses, migrations are run by hand on a Sunday night. Every new feature breaks an old one because the data model cannot carry it.

I start with the data model: entities, relations, what changes often and what is only read. Then the API — REST or GraphQL, with documentation the frontend can be written against in parallel. Heavy operations go to queues, hot data to a cache, search to an index rather than a scan. The core stack is NestJS and PostgreSQL; for compute and services under load, Go or Rust. Migrations live in code and run in CI before the release.

You get an API with documentation, tests and observability: logs, metrics, alerts. It can be handed to your team or connected to any frontend. FOQIN is built this way: a nightly exchange with 1C across 12,000+ items, part number and cross-reference search on an index. At Meetcap the processing queue holds the load when calls end at the same time.

What is included
  • Data model and PostgreSQL schema with migrations
  • REST and GraphQL APIs with documentation and tests
  • Queues and background jobs: exchanges, mailings, file processing
  • Cache, indexes, search across large reference tables
  • Integrations with 1C, payment systems and external APIs
  • Observability: logs, metrics, alerts, CI/CD
How we work
01
A 30-minute callWe look at the current data model and the points where it hurts. I name the timeline and the stack.
02
A prototype in a weekThe data schema and a working API for the main scenario, with documentation so the frontend can start in parallel.
03
Weekly releasesQueues, integrations, load tests. Migrations through code and CI, no manual edits to the database.
04
SupportMonitoring, alerts, incident review. A reply within the business day.
Consultation

Thirty minutes to decide whether we work together