Development of a lean backend architecture with Spring Boot, Docker, and Kubernetes
Project duration: 3 months
Brief description
As part of this project, a reference architecture is created that serves as a foundation for training in modern software development. To illustrate the architecture, a compact sample application with a REST API is implemented to demonstrate typical development and architectural principles in a hands-on manner. The implementation uses Spring Boot, the Spring Framework and Java. Maven is used for project structuring and build management. A PostgreSQL database is used for persistence, with respective migrations being versioned and automated via Flyway. In addition, JUnit and Mockito are used for unit tests, while Testcontainers are used for integration tests. The application is containerized using Docker. The REST API is documented with Swagger/OpenAPI. To increase developer efficiency, Lombok is used to reduce boilerplate code and MapStruct is utilized for DTO mappings.