Profiling before you optimize: a checklist
Never guess. The five signals I capture before touching a single line of code.
Never guess. The five signals I capture before touching a single line of code: wall-clock breakdown, CPU flame graph, allocation profile, GC pause log, and a baseline benchmark I can diff against afterward.
(Full write-up coming soon.)