Java
From basics to expert: OOP, Collections, Streams, Concurrency, Spring Boot REST APIs, System Design, Error Handling, Performance Optimization, and Database Indexing.
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.