In C (embedded): How to use gdb over JTAG. No one else had set it up, and the errors were too hard to diagnose just by gathering traces.
In concurrent/distributed code: General problem, not language specific, how to use tools like TLA+ or Alloy to model the system and identify errors that were hard to replicate live.