Backend

Spring Boot

Enterprise Spring Boot services with REST, JPA, security, and AWS deployment.

Advanced2+ yearsBackend

Spring Boot is my go-to when a client needs the maturity, ecosystem, and operational predictability of the JVM. I have shipped Spring Boot REST APIs, scheduled batch jobs, Spring Security-protected modules, and JPA-backed data layers on PostgreSQL and MySQL for clients in real-estate, compliance, and manufacturing.

My Journey

How I work with Spring Boot

I picked up Spring Boot when a real-estate client standardized on the JVM for their backend. The convention-over-configuration model meant I could be productive within days, and the ecosystem (Spring Data, Spring Security, Actuator) covered most cross-cutting concerns out of the box.

Across multiple projects I have built layered Spring Boot services — controllers, services, repositories — with DTO mapping, validation, centralized exception handling via @ControllerAdvice, and JWT-based stateless auth using Spring Security filters.

I have also operationalized those services: Maven multi-module builds, Dockerized JARs, deployment on AWS EC2 behind NGINX, and Actuator endpoints wired into health checks. Spring Boot is where I lean when the brief is 'reliable, boring, and built to last.'

Where I've Applied It

Spring Boot across business domains

Real Estate

Built listing-search APIs and agent CRM endpoints on Spring Boot + PostgreSQL with JPA Specifications for dynamic filtering.

Compliance Management

Implemented the audit + reporting service in Spring Boot, with scheduled jobs generating compliance reports and emailing them to officers.

Manufacturing & Industrial

Delivered workflow-automation REST APIs and integration endpoints connecting shop-floor systems with the central platform.

Automotive Marketplace

Built dealership inventory management endpoints with role-based access via Spring Security and external integrations.

Problems Solved

Real issues I resolved using Spring Boot

Eliminated N+1 query storms in a JPA-heavy dashboard

Problem

A dealership dashboard was firing 400+ SQL queries per page-load because JPA was lazy-loading every association in a loop.

Solution

Switched the hot read paths to JPQL fetch joins, added entity graphs for the dashboard query, and enabled hibernate statistics in staging to catch regressions in CI.

Impact

Page load dropped from ~4.2s to ~480ms, database CPU dropped sharply, and we avoided scaling the RDS instance.

Spring BootSpring Data JPAPostgreSQLHibernate

Stateless JWT auth replacing a fragile session setup

Problem

The original app used server-side sessions tied to a single instance — horizontal scaling broke logins and required sticky sessions on the load balancer.

Solution

Implemented a stateless JWT filter in Spring Security with refresh tokens stored in Redis, plus role-based @PreAuthorize annotations on controllers.

Impact

Horizontal scaling became trivial, sticky sessions were removed from the ALB, and auth latency improved because Redis lookups beat the session-store DB hits.

Spring BootSpring SecurityJWTRedis

Made deployments boring with Actuator + Docker

Problem

Production rollouts depended on manual JAR drops to EC2 and informal smoke tests. Outages went unnoticed for minutes.

Solution

Containerized the Spring Boot service with a multi-stage Dockerfile, exposed Actuator health/liveness/readiness endpoints, wired them into NGINX upstream health checks, and added GitHub Actions for build + image push.

Impact

Rollouts became repeatable, bad deploys were caught by health checks before traffic shifted, and mean-time-to-detect for backend issues dropped to seconds.

Spring BootSpring ActuatorDockerNGINXGitHub Actions
Related Skills

Often used together

Have a Spring Boot project in mind?

I am open to full-time and contract work where Spring Bootis core to the stack. Let's talk about what you are building.