LanguagesLanguages
Tools-in-Action25min
INTERMEDIATE

Finding Java Memory Leaks with Heap Dumps (JDK 25)

This session explores how Java memory leaks occur and demonstrates detection, analysis, and resolution using JDK 25 tools. Through JVM memory architecture, GC Roots, and common leak patterns, attendees learn diagnostic techniques with IntelliJ Profiler and JFR, gaining practical strategies to understand and prevent memory leaks in production systems.

talk.summaryAiDisclaimer

Badr Kacimi
Badr KacimiCapgemini Belgium
talks.description
This talk provides a practical and engaging deep dive into how memory leaks occur in Java applications and how to detect, analyze, and fix them using modern tools available in JDK 25, guiding the audience through JVM memory architecture, GC Roots, and common leak patterns such as unbounded caches and mismanaged ThreadLocals, illustrated with a live demo using the IntelliJ Profiler and heap dumps captured via JFR, jcmd, and automatic OOM triggers; by the end of the session, attendees—primarily Java developers, backend engineers, and performance‑focused practitioners—will walk away with a clear mental model of JVM memory behavior, hands‑on diagnostic techniques, and practical best practices to prevent leaks in production systems.
memory
leaks
jvm
profiling
talks.speakers
Badr Kacimi

Badr Kacimi

Capgemini Belgium

Belgium

Badr Kacimi is a Software Engineer and Consultant at Capgemini Belgium and ABN AMRO Bank in the Netherlands, where he designs and develops advanced analytical financial risk models. His day‑to‑day work spans the JVM/Spring and Python ecosystems, and he increasingly serves as a trusted advisor to Blue Harvest’s clients on technology strategy and engineering best practices.
Badr is an active member of BeJUG – the Belgian Java User Group, and has delivered numerous sessions on the Java ecosystem, sharing his insights and passion for modern software engineering with the community.