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.
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 detailsstack
- Java
- Spring Boot
- Spring Cloud
- Symfony
- PostgreSQL
- Kafka
- Docker