Backend & API development
For startups and product teams that need a solid backend, a new service or an API for their app.
What you get
- Spring Boot services, REST APIs, PostgreSQL and Redis
- Sign-in, a clean data model and automated tests
- Documentation and a handover session
Your product needs a backend that is fast, secure and easy to change — or one new service or API that fits into what you already have. I design and build it the way large enterprise systems are built, sized for your team.
What you get
- A REST API with clear documentation (OpenAPI), versioning and consistent errors.
- A clean data model in PostgreSQL, with migrations you can run safely.
- Sign-in and permissions done properly: roles, tokens, rate limits and a record of who changed what.
- Automated tests that run on every change, so new features don't break old ones.
- Logs, metrics and alerts, so problems show up before your users notice them.
How I work
I start by reading what exists and talking to the people who use the system. Then comes a short written design: endpoints, data and risks. The work lands in small, reviewed pieces in your repository, with a demo each week.
Technology
Java 21 and Spring Boot 3, PostgreSQL, Redis, message queues (SQS, Kafka, RabbitMQ), Docker, and CI/CD on GitHub Actions or Azure DevOps — backed by nearly four years of building enterprise backends on AWS, Azure and GCP.
A good fit if…
- your app or website needs a backend or an API, and nobody on the team owns it;
- you have a working backend that has become hard to change;
- you want an extra senior pair of hands before a deadline.
Questions
Can you work on our existing codebase?
Yes. Most backend work is extending or fixing what already exists. I start by reading the code and agreeing on conventions with your team.
Which languages and frameworks do you use?
Mainly Java and Spring Boot with PostgreSQL; Node.js and TypeScript when that suits your team better.
Have a project in mind?
Tell me what you're building. You'll get an answer within a day, even if it's "not a fit".