Most Spring Boot tutorials teach you to build a CRUD app and call it a day. But that's not really what the job looks like day to day, so I put together a project that mimics what you'd actually work on as a backend dev at a company with real infrastructure.

I've added the following 12 tasks that you'd need to complete:

Project setup: spin up Postgres + messaging brokers, verify everything's healthy

Kicking off development: request validators, custom exceptions, a new order status API

Debug a critical bug: chase down a duplicate-insert caused by misusing EntityManager.persist() vs save()