Rajat's Notes
Java 21 · Spring Boot 3.4.x · Spring Cloud 2024.0.x
Java Core
OOP in Java
Pillars, SOLID, composition, records, sealed classes
Collections
HashMap internals, HashSet, TreeMap, ConcurrentHashMap, fail-fast iterators
Memory Model (JMM)
Happens-before, volatile, synchronized, atomics, safe publication
Threads & Concurrency
ThreadPoolExecutor, CompletableFuture, locks, ForkJoin
Virtual Threads
Project Loom, structured concurrency, scoped values
JVM Internals
Memory areas, G1GC, ZGC, JIT, OOM types, class loading
Design Patterns
Factory, Builder, Proxy, Decorator, Strategy, Observer, CQRS
Spring
Spring Lifecycle
Bean lifecycle, ApplicationContext, scopes, auto-configuration
JPA & Hibernate
Persistence context, N+1, fetch strategies, projections, second-level cache
Transactions
Propagation, isolation, SAGA, outbox pattern, distributed transactions
Spring Security
Filter chain, OAuth2/JWT, method security, CORS, CSRF, async context
Distributed Systems
Kafka & Events
Topics, consumer groups, delivery semantics, outbox pattern, error handling
Resiliency
Circuit Breaker, Retry, Bulkhead, Rate Limiter, Service Mesh
System Design
Capacity Numbers
RPS, memory sizing, thread pools, latency reference