Skip to content
GET/backend

Backend & distributed systems

I design and build backends - from a single API to a system made of several independent services. I work in Java (Spring Boot, Spring Cloud) and PHP (Symfony), with a focus on data that doesn't get lost and systems that are still maintainable a year from now.

RequestREST / HTTPControllerinput validationDomain logicDB / Kafkapersistent stateCI/CDtests, deploy

The typical request path through the backend I build.

This is for you if:

  • you have an existing application that needs a new API or an integration with an external system
  • your monolith is getting hard to extend and you're considering splitting it into smaller services
  • you need someone who can own the database, queues and observability, not just endpoints

What you get:

  • A REST API designed around real use cases, not just around documentation
  • A database with proper migrations (Flyway) and a sensible model, not a pile of tables
  • Unit and integration tests (Testcontainers) that actually verify something
  • Basic observability - metrics, logs, tracing - so you know what's happening before a client calls you
example from my work

Ordered - a distributed e-commerce system

I split an e-commerce monolith into six independent services (Spring Boot, Spring Cloud, Kafka with the outbox pattern, PostgreSQL, Redis), with an API Gateway, service discovery and full observability (Grafana, Jaeger, Prometheus). Gatling load tests: 100% success rate, p95 ~207ms for the product catalog.

see details
stack
  • Java
  • Spring Boot
  • Spring Cloud
  • Symfony
  • PostgreSQL
  • Kafka
  • Docker