This talk gets you started with JVM bytecode engineering. Kees Jan peels away the fluffy Java language syntax to lay bare the gears that make the JVM tick. He will show what options there are for you to compile bytecode and create classes just the way you want them to be. The talk starts by looking at the low level JVM architecture and the byte code design. You will learn how to compile your own class files from byte code. Kees Jan will demonstrate a number of byte code assemblers and disassemblers, discussing pro and con of each. You walk away from this talk with a solid understanding of class files and the JVM and byte code architectures. Filmed at NLJUG, 2014.