During my time at Twitter, I engaged in lots of JVM performance tuning at scale. The talk summarizes lessons that were learned in the process of doing this in the area of memory, CPU, lock contention, and threading tuning.