At Level 2, you start to debug with intention. You no longer just try things and hope—they’re informed guesses, guided by logs, observations, and experience. You take initiative to investigate bugs, not just wait for others to confirm or explain them. Your toolkit now includes tools like debuggers, error tracking dashboards, test coverage reports, and stack traces. You approach bugs with a method: gather clues, form a theory, test it, and adjust.

Key Behaviors

  • Reproduces and isolates issues with minimal guidance
  • Reads and traces stack traces through unfamiliar code
  • Uses logs and error messages to form hypotheses
  • Fixes moderately scoped bugs end to end
  • Leaves helpful notes or comments for others encountering the same issue

Common Struggles

  • Can get stuck in rabbit holes without stepping back
  • May miss broader root causes by focusing on symptoms
  • Sometimes hesitates to touch unfamiliar code when debugging

Success Indicators

You know you're successful when you:

  • Investigate bugs with a structured process
  • Fix issues in code you didn’t write by reading and testing
  • Communicate clearly about what’s broken, why, and what you’re trying
  • Leave the codebase better than you found it when fixing bugs

Mindset Shift

From:

"I can fix the thing that’s broken."

To:

"I understand the system well enough to explain what went wrong."

Questions to Ask Yourself

  • What assumptions is this code making—and are they valid?
  • Is this a one-off issue or part of a recurring pattern?
  • What could prevent this class of bug in the future?

Build These Habits

  • 1
    Write tests that reproduce bugs before fixing them
  • 2
    Use tools like git bisect, debugger breakpoints, or tracing utilities
  • 3
    Annotate logs or code to leave breadcrumbs for others
  • 4
    Document what caused the issue and how you resolved it

Seek Feedback

  • “Does my root cause analysis make sense to you?”
  • “Would my notes help the next person understand what happened?”
  • “Is there a better way to prevent this kind of issue?”

Signals You're Ready to Level Up

  • You debug without needing someone to point you in the right direction
  • You explain causes as well as fixes in your PRs or commits
  • You help others debug more effectively through questions or tools

Focus Summary

  • Don’t just squash the bug—understand where it came from.

At Level 2, debugging becomes a practiced skill. You’re not guessing anymore—you’re reasoning. You’re learning to see through the chaos.