Application development
Java and Spring Boot back-end development
I design and build robust business services with Java and Spring Boot, tested and observable from day one. The delivered code is readable, documented and easy for your team to take over.
What it covers
A solid back end shows three signs: tests fail before a bug reaches production, errors are explicit for the caller, and adding a business rule does not require re-reading the whole module. I build services around those three requirements, with minimal dependencies and versions kept current.
Decomposition follows business capabilities rather than technical layers. Controllers stay thin, business logic lives in objects that can be tested without infrastructure, and persistence stays confined to adapters. That choice enables fast tests and predictable evolution.
What a typical delivery contains
Every increment includes code, tests, API documentation and environment configuration. Database migrations are versioned, and entry points are instrumented for monitoring before release.
- REST APIs documented and verified by integration tests.
- Unit tests on business rules, with no database involved.
- Integration tests against real dependencies using Testcontainers.
- Versioned, repeatable schema migrations.
- Traces and metrics exposed from the first deployment.
Problems addressed
Business logic is scattered across controllers, services and SQL queries. Tests require a full database, so nobody runs them. Errors surface as 500 responses with no actionable detail. Spring upgrades have been postponed for years. Performance degrades on search screens.
Expected benefits
Tested code where coverage targets business rules. APIs documented and automatically verified. A clear separation between business logic and infrastructure. Startup and response times monitored continuously. A codebase a newcomer can pick up confidently. Dependencies kept current and tracked over time.
Method and steps
- 1
Contract framing
Writing API specifications, exchange models and expected error cases, validated with the consumers of the service.
- 2
Technical foundation
Project setup, migrations, instrumentation and the test pipeline, so that each feature lands on a stable base.
- 3
Iterative development
Implementation in shippable functional increments, each with tests, documentation and a walkthrough.
- 4
Release and handover
Monitored deployment, baseline indicator measurement, then a collective code review explaining the structural choices.
Deliverables
Delivered Spring Boot services with unit and integration tests.
Generated API documentation with request examples.
Versioned schema migration scripts.
Environment configuration for development, staging and production.
Monitoring dashboards for entry points.
Code review and handover session with your team.
Technologies used
- Java
- Spring Boot
- Spring Security
- Hibernate et JPA
- PostgreSQL
- Flyway
- Apache Kafka
- OpenTelemetry
- JUnit 5
- Testcontainers
Frequently asked questions
Do you work with an existing codebase?
Yes, that is in fact the most common case. I start by reading the conventions in place and align my contributions with them, suggesting targeted improvements rather than rewriting the foundations.
Which Java and Spring versions do you use?
Java 21 or 25 with Spring Boot 4 for new projects. On an existing application I stay on the current version until an upgrade plan is agreed and tested.
Do you provide maintenance after delivery?
Yes, as a maintenance package or planned on-call support. My goal remains making your team self-sufficient on the delivered code.
Related case studies
Incremental overhaul of a contract management monolith
Modernisation through domain extraction, with no service interruption
Demonstration sample - not a real client reference.
API and integration foundation across eleven systems
Versioned contracts, idempotency and incident recovery
Demonstration sample - not a real client reference.
Angular front-end migration and performance overhaul
Five versions behind, one hundred and eighty screens, migrated in shippable batches
Demonstration sample - not a real client reference.
Talk about my back-end project
Describe the functional need and the technical context. I will quickly tell you whether the scope is realistic and where to start.