With 2 decades of experience, Victor is a Java Champion specialized in delivering workshops for mid- to senior-level developers and architects. Thousands of engineers from over 150 companies have attended Victor’s training sessions, enabling him to develop deep insights across a variety of application domains. Distilling the lessons learned from these sessions, he gave countless educational yet entertaining talks at top conferences, where he’s known as ‘the speaker with the soundboard’. In his spare time, Victor coaches individuals and teams and organizes online meetups for the European Software Crafters community. More on https://victorrentea.ro
Let's explore memory leaks and memory inefficiency patterns in Java backend systems. After reviewing the Java Memory Model and the JVM flags you #musthave in production, we’ll analyze heapdumps of 10 common memory leaks, collected with ❤️ from 150+ companies over a decade of consultancy. You'll hear about ThreadLocal, inner classes, cache/hash keys messup, thread leaks, and many others. In the end, you'll get access to a large repo of memory leaks + heap dumps for later self-study. Oh, and you can get a bounty for any real memory leak you had, which is not yet in that repo 😊.
Painful days wasted optimizing the wrong part of the code... Blind attempts to fix a production performance issue. Then, speculative “micro-optimizations" that clutter the code for no measurable gain. Only to later trace the problem to the most unexpected cause. This talk explains how to efficiently zoom in on a performance bottleneck using OpenTelemetry distributed tracing, metrics, and execution profiling. After we learn to read a flame graph, we’ll trace typical backend bottlenecks, such as resource starvation (threads and JDBC Connections), time-consuming interceptors, repeated network calls, CPU hotspots, and lock contention, using a variety of mainstream tools. Join this session to prepare for the performance issues that any successful application will eventually have.
Searching for speaker images...
