Debugging & Technical Problem Solving (iDBG)

Determining the cause of technical problems and applying appropriate solutions.

LVL 2 - Engineer I

Inexperienced at debugging but able to fix simple problems with input from others.

  • usually requires assistance to identify and address problems.
  • attempts to recreate basic issues from bug reports provided by others.

LVL 3 - Engineer II

Using tools to investigate and fix common issues, collaborating with their team especially on complicated problems.

  • investigates and fixes common issues, often needing help with more complex issues.
  • capable of debugging simple programs, for example by reading through error logs and using step-through debugging.
  • knows the appropriate tools and approaches when debugging code.
  • reports and documents bugs for others, including how to recreate the issue.

LVL 4 - Senior I, TTL, SEM

Guiding their team to mitigate technical issues by guiding prioritisation, tooling, and approach. Taking the lead on resolving some difficult technical issues.

  • capable of debugging complex end-to-end issues, sometimes needing to pair on very tough issues.
  • has established approaches to diagnosing and narrowing-down causes by process of elimination.
  • helps others solve problems with the goal of making them more independent for debugging tasks.
  • ensures the relevant tools exist within the project and are available for use by the rest of the team.
  • collaborates openly with bug reporters to try and narrow down hard-to-reproduce issues.
  • triages open issues alongside new work, advising on priorities by considering risk and core journeys.

LVL 5 - Senior II

An authority for helping solve problems in their domain, even in unfamiliar contexts. Managing and mitigating problems with no simple solutions, and supporting others with their debugging techniques.

  • capable of debugging almost any issue, given enough time.
  • knows how to mitigate a problem where no solution can be found in a timely manner.
  • has established approaches to diagnosing an issue that cannot be replicated in a test/development environment.
  • regularly assists others with critical or tough issues.
  • identifies, prioritises, and escalates problems within a project that need to be addressed in order to meet the clients' goals.

LVL 6 - Principal

Establishing our best practice for how we manage technical issues across our projects.

  • an expert in helping others isolate issues and solve them quickly.
  • helps teams establish strategies for debugging and diagnosing problems on the project.
  • finds common patterns of problems across projects and proposing solutions to be implemented community-wide.
  • advises on how teams should manage technical debt, and how to prioritise this work for clients.