The JVM is a remarkable piece of software. As a Java developer, you see a black box and feed Java code into it, and it somehow magically runs that code — and ideally runs it incredibly fast. But what’s actually going on? This presentation takes simple Java code and traces its journey through the JVM as it is compiled, interpreted, compiled again, optimized, deoptimized, and eventually submitted to the processor as native instructions. You will learn about all those black box layers that make Java code run fast and will be a better Java developer as a result.