Java Basics

JVM, JDK, JRE, syntax, data types, variables, operators, control flow, and your first Java program from scratch.

Object-Oriented Programming in Java

Classes, objects, constructors, encapsulation, inheritance, polymorphism, abstraction, and interfaces — deep dive.

Java Intermediate — Collections, Generics & Lambdas

Java Collections Framework, Generics, functional interfaces, lambda expressions, and the Stream API.

Java Expert — Concurrency, JVM & Design Patterns

Multithreading, ExecutorService, CompletableFuture, JVM internals, memory model, and GoF design patterns.

Spring Boot — REST API & Backend Server

Building production-grade REST APIs with Spring Boot, Spring MVC, JPA/Hibernate, validation, and security.

System Design with Java

Scalable architectures, microservices with Spring Cloud, messaging with Kafka, and distributed system patterns.

Error Handling & NullPointerException

Checked vs unchecked exceptions, custom exceptions, global exception handlers, Optional, and null-safety strategies.

Java Performance Optimization

JVM tuning, GC algorithms, profiling with JProfiler/VisualVM, JIT compilation, and memory leak detection.

Indexing, Caching & Database Optimization

B-Tree & Hash indexes, query plans with EXPLAIN, Hibernate second-level cache, Redis integration, and connection pooling.

Java Multithreading — Deep Dive

Thread lifecycle, wait/notify, Semaphore, CountDownLatch, CyclicBarrier, Phaser, Fork/Join framework, and Java 21 virtual threads — every synchronization primitive explained in depth.

Java I/O, NIO & File System

Streams, Readers/Writers, NIO channels and buffers, Path and Files API, serialization, memory-mapped files, and non-blocking network I/O with Selector.

Testing in Java — JUnit 5, Mockito & Spring

Unit testing with JUnit 5, mocking with Mockito, integration testing with Spring Boot Test, @DataJpaTest, Testcontainers, and TDD workflow.

Reactive Programming — Project Reactor & WebFlux

Reactive Streams spec, Mono and Flux, operators, backpressure, error handling, Spring WebFlux REST endpoints, and reactive database access with R2DBC.