Master Backend Development with Spring Boot and its Ecosystem

With the Spring Boot Enterprise Backend Development Course you’ll be able to:

  • Develop scalable, high-performance Java Enterprise Applications with Spring Boot
  • Build and secure RESTful APIs with authentication and authorization best practices (JWT, OAuth2)
  • Apply SOLID principles to write clean, maintainable, and extensible backend code
  • Integrate databases with JPA and Hibernate
  • Deploy applications to the cloud with Docker, Kubernetes, and CI/CD pipelines

Join this instructor-led course, taught by Orlando L Otero, in a small group setting (no more than 5 participants) for a personalized and hands-on learning experience.

Here is the outline of what the course covers:

  • Spring Boot Fundamentals and Backend Architecture
    • The Role of Backend in Modern Applications
    • Spring Boot vs Vanilla Spring
    • Separation of Concerns, Clean Code
    • Layered architecture (Controller, Service, Repository layers)

  • Writing RESTful APIs with Spring Boot
    • REST API Principles and Best Practices (Free PDF Download)
    • Writing RESTful Endpoints
    • Request Parameters and Payload Validation
    • Exception Handling with @RestControllerAdvice
    • API Versioning
    • API Documentation with OpenAPI/Swagger
    • Bonus: HAL links with Spring HATEOAS

  • Data Access with Spring Data JPA, Hibernate and Spring JDBC
    • Understanding ORM (Object-Relational Mapping)
    • Configuring Database(s) Connection Properties
    • CRUD Operations with Spring Data JPA and Hibernate
    • CRUD Operations with Spring JDBC
    • Handling Database Transactions
    • Pagination and Sorting
    • Database Migrations with Flyway
    • Bonus: Customs Spring Data JPA Repositories
    • Bonus: Dynamic SQL Queries with EntityManager, JPQL and Criteria API

  • Authentication and Authorization with Spring Security
    • Spring Security Fundamentals
    • Securing RESTful APIs
    • Handling CORS and CSRF
    • Authorization Models
      • Role-Based Access Control
      • Method-Level Security
      • Expression-Based Access Control
      • Attribute-Based Access Control
    • Authorization and Authentication with JWT
    • Authorization with OAuth2
    • Bonus: 2FA with TOTP (Time-based One-Time Password)

  • Spring Boot Messaging and Event-Driven Systems
    • Event-Driven Systems Fundamentals
    • RESTful APIs vs Message-Driven Communication
    • Built-in Spring Application Event System
    • Asynchronous Communication with ActiveMQ Artemis
    • Asynchronous Communication with Kafka
    • Error Handling

  • Unit and Integration Testing in Spring Boot
    • Unit Tests with JUnit and Mockito
    • APIs Integration Tests with @SpringBootTest, RestAssured
    • Mocking 3rd party APIs with WireMock
    • Publishers and Subscribers Integration Tests with Embedded Message Brokers
    • Bonus: Integration Tests with Testcontainers
    • Bonus: Asynchronous testing with Awaitility
    • Bonus: Mutation testing with Pitest

  • Containerization, Deployment and DevOps
    • Docker for Spring Boot Applications
    • Deploying Spring Boot Apps to Kubernetes
    • CI/CD with Jenkins, GitHub Actions
    • Centralized Logging
    • Distributed Tracing
    • Application Performance Monitoring (APM) tools




Any question or concern?

Fill out my online form.