Java Developer
For developers learning Java from core fundamentals through Spring Boot, microservices, and enterprise patterns.
Completion Badge
Java Programming Fundamentals
A comprehensive introduction to Java programming for developers new to the language. Through 16 guided lessons, you'll build a complete Library Management System console application starting from a simple Hello World program and growing it lesson by lesson into a full in-memory CRUD system with menus, validation, collections, and interfaces. Each teaching lesson is paired with hands-on coding exercises in VS Code using JDK 21 and Maven.
Java Data Structures and Collections
A deep dive into Java's collections framework and data structures for developers who have completed Java Programming Fundamentals. Through 14 guided lessons, you'll build a complete Inventory Management System console application starting with raw arrays and progressively migrating to ArrayList, HashMap, HashSet, generics, sorting with Comparator, and stream-based reporting. Each teaching lesson is paired with hands-on coding exercises in VS Code using JDK 21 and Maven.
Object-Oriented Design in Java
Master object-oriented design principles and patterns in Java by building a RideShare simulation from the ground up. This course covers SOLID principles, Factory, Builder, Strategy, Observer, Decorator, Adapter, and Dependency Injection patterns through hands-on refactoring exercises. Students progressively transform a monolithic codebase into a clean, extensible, pattern-driven application.
Building REST APIs with Spring Boot
Build a production-quality Task Manager REST API from scratch using Spring Boot, Spring Data JPA, and PostgreSQL. This course covers Spring Boot fundamentals, REST controllers, service layer design, JPA persistence, Bean Validation, global exception handling, and pagination. Students incrementally build a fully functional API that serves as a portfolio piece.
Data Access with Spring Data JPA and PostgreSQL
Master production-grade data persistence in Java using Spring Data JPA and PostgreSQL. This course takes you from basic entity modeling through advanced topics including custom JPQL queries, optimistic locking, schema migrations with Flyway, and JPA auditing. You will incrementally build a complete Blog Platform backend, gaining hands-on experience with every major JPA pattern used in real-world Spring Boot applications.
Testing Java Applications with JUnit 5 and Mockito
Build comprehensive test coverage for Java applications using JUnit 5, Mockito, and Spring Boot's testing infrastructure. This course takes a pre-built, untested E-Commerce Order Processing System and adds tests layer by layer: unit tests, Mockito mocks, MockMvc controller tests, repository tests with @DataJpaTest, TDD with a new feature, and full integration tests with Testcontainers. By the capstone you will have a complete, professional-grade test suite.
Securing Spring Boot Applications
Incrementally harden a Spring Boot Task Management API called Vaultly through seven security layers. You will start with an unsecured CRUD API and progressively add HTTP Basic authentication, form-based login with database-backed users, stateless JWT token authentication, role-based access control (RBAC) with ADMIN and USER roles, method-level security using @PreAuthorize and @PostAuthorize with SpEL expressions, and OAuth2/OpenID Connect resource server configuration using Keycloak. The capstone adds a full audit trail that records every authentication success and failure event. By the end you will have a deeply-secured, production-quality REST API that demonstrates every major Spring Security pattern.
Microservices with Spring Boot and Docker
Master microservices architecture by building ShopNest a 3-service e-commerce platform consisting of a Product Service, Order Service, and Notification Service. You will decompose a monolith into independent Spring Boot services, wire them together with REST communication, externalize configuration, add resilience patterns with Resilience4j circuit breakers, containerize each service with Docker multi-stage builds, and orchestrate the full stack with Docker Compose. By the end of this course you will have a production-ready, containerized microservices system that demonstrates bounded contexts, fault tolerance, and cloud-native deployment practices.
Java Performance and Production Patterns
Master the art of building high-throughput, production-ready Java applications. In this advanced course, you play the role of a senior Java engineer at FreightFlow a logistics company processing hundreds of thousands of shipment orders daily. You will profile and progressively optimize the Order Processing System through six performance transformations: concurrent thread pool execution, CompletableFuture async pipelines, HikariCP connection pooling with batch inserts, Caffeine in-memory caching, JMH microbenchmarking, and GC tuning with G1GC and ZGC. Each exercise lesson produces measurable throughput improvements, turning an 80 orders/sec sequential processor into a 3,500+ orders/sec production-grade system.
Java on Azure
Build and deploy a production-grade Spring Boot application to Azure using real cloud infrastructure. You play the role of a cloud engineer at Meridian Financial, migrating the Customer Portal from on-premises to Azure-native services. Across 7 hands-on lab sessions, you deploy to Azure App Service, containerize with Docker and push to Azure Container Registry, run on Azure Container Apps, store secrets in Azure Key Vault with Managed Identity, replace H2 with Azure PostgreSQL Flexible Server using Flyway migrations, decouple notifications with Azure Service Bus, and instrument the application with Application Insights for distributed tracing and alerting. Every lab provisions real Azure resources in a dedicated subscription.