Course Objective & Scope
The Spring ecosystem is broad, so teams often end up with different habits around configuration, layering and testing. This programme establishes a shared service development standard on modern Java (17/21, records, virtual threads) and Spring Boot 3.
Dependency injection, auto-configuration, Spring Web, Spring Data JPA, Bean Validation, centralised error handling, Spring Security and Actuator-based observability are applied step by step on a sample service. The course is adapted to the organisation's own stack, and participants leave with a reusable project template and a code review checklist.
Who Should Attend?
- Java developers moving to Spring Boot or standardising existing Spring projects
- Backend teams breaking monolithic Java applications into services
- Tech leads and code reviewers
- Prerequisite: basic Java and object-oriented programming experience
Key Takeaways
- Build a layered, testable REST service with Spring Boot 3
- Configure entities, repositories and transactions correctly with Spring Data JPA
- Produce consistent error responses with @ControllerAdvice and ProblemDetail
- Add JWT/OAuth2-based authentication with Spring Security
- Write unit and integration tests with JUnit 5, Mockito and Testcontainers
- Expose health checks and metrics with Actuator and Micrometer
Curriculum
Modern Java and Spring Boot Fundamentals
- Java 17/21 features: records, sealed classes, virtual threads
- Spring IoC container, dependency injection and auto-configuration
- Profiles, application.yml and externalised configuration
Building REST APIs with Spring Web
- Separating controller, DTO and service layers
- Input validation with Bean Validation
- Centralised error handling with ProblemDetail
Data Access with Spring Data JPA
- Entity relationships, lazy/eager loading and the N+1 problem
- Transaction boundaries and @Transactional behaviour
- Schema migrations with Flyway or Liquibase
Security with Spring Security
- Configuring the SecurityFilterChain
- Authentication with JWT and OAuth2 Resource Server
- Method-level authorisation
Testing Strategy
- Unit tests with JUnit 5 and Mockito
- @WebMvcTest and @DataJpaTest slice tests
- Integration tests against a real database with Testcontainers
Observability and Packaging
- Actuator endpoints and Micrometer metrics
- Structured logging and tracing
- Building container images and preparing for a CI/CD pipeline
Other Courses in This Category
-
.NET and ASP.NET Core Web API Development
ASP.NET Core Web API and Minimal APIs, Entity Framework Core, dependency injection, middleware and authentication — for teams building maintainable, testable backend services on .NET 8/9.
- Live Course
- 5 modules
-
Node.js and NestJS Backend Development
Modular backends with TypeScript and NestJS: controllers, providers, dependency injection, data access with Prisma/TypeORM, guards and pipes, testing with Jest — a scalable service structure for Node.js teams.
- Live Course
- 5 modules
-
REST API Design Best Practices
Resource modelling, HTTP methods and status codes, versioning, pagination, error format (RFC 9457), idempotency and contract-first design with OpenAPI — for teams publishing consistent, documented APIs.
- Live Course
- 5 modules
-
Event-Driven Architecture with Kafka and Messaging
Events vs commands vs messages, asynchronous communication with Apache Kafka and RabbitMQ, the outbox pattern, idempotent consumers, sagas and schema registry — for teams designing loosely coupled, scalable systems.
- Live Course
- 5 modules
-
Microservices Architecture
Defining service boundaries, data ownership, API gateways, inter-service communication, resilience patterns, deployment on Kubernetes and observability — technology-agnostic microservices design training.
- Live Course
- 6 modules
-
Secure Software Development (SSDLC & OWASP)
OWASP Top 10 and OWASP API Security Top 10 vulnerabilities, threat modeling, secure authentication, SAST/DAST/SCA tooling and secret management — for backend and full-stack teams preventing security flaws while writing code.
- Live Course
- 5 modules
Get in touch