Safeguarding – Culture is a Process, not a Single Change

We needed to improve quality. Not just once, but all the time. And we needed to do it across over 100 teams, each of which had a different context and different quality problems. The problem that impacted the greatest number of teams impacted only 6 — and more than 70% of the problems affected only one team.

No central plan could help with either of these. We needed a systematic solution, a strategy. But not a central plan. We needed a practice, a habit — something that combined funding with problem fixing, while reinforcing local ownership.

That’s when we invented Safeguarding. That was more than a year ago; teams are owning their quality and actively making things better.

Another company had consistent risk aversion. Commonly, people identified the option with the highest expected value…and then did something else. In that environment, the personal costs of even tiny failures were too high. So everyone consistently chose the lowest-risk option, even when that was a guaranteed bad outcome. Psychological safety was totally missing. And yet each relationship was different, with different risks.

Safeguarding was also an effective strategy for creating Psychological Safety.

Continue reading “Safeguarding – Culture is a Process, not a Single Change”

Using code review to support change

Someone I know had the following conversation recently during code review:

  • [WontFix] //depot/[elided].cs: Line 232
    • [reviewer]: Unit test this directly
    • [author]: the integrations test this. Don’t see any direct benefit of UT it directly. (26 minutes ago)

He wanted advice on how to get past this. His goal is to get his team to write direct unit tests, as opposed to multi-unit component and integration tests. But how? And what does he do in code review to help the team accomplish that in specific cases? Continue reading “Using code review to support change”