Menu

Awareness, Acknowledgement, and Adjustment

23 August 2017

There's a common pattern in IT. In many cases, it ultimately leads to a new buzzword. It's not complicated. In fact it's fairly obvious. But understanding what you can do with it can help immensely when it comes to pushing change in your organisation.

Agile, DevOps, Microservices, Containerization, whatever the next buzzword is - all of these "revolutions" are really a result of these three steps.

Awareness

Acknowledgement

Adjustment

Examples:

Let's look at a couple of examples to solidify what I'm talking about. I'm simplifying for the purposes of brevity, but consider Agile and Microservices:

As a "politically powerless developer" in an organisation, it can be difficult to instigate change, even when you know it's the right thing to do. In short, you probably don't have the power to implement the Adjustment part of this pattern.

But you can definitely affect Awareness. It's easy - start measuring.

Measure how long it takes for a change you commit to make it to production. What happens in that time? Is there a lot of waiting?

Measure how long it takes for a user-reported issue to get to your backlog. Add some production monitoring, and measure how much time is saved by learning about issues first-hand. How much time did you save?

Measure the time it takes to write tests, and compare that to the time you take fixing bugs for code that doesn't have tests around it. Can you prove that writing tests is beneficial overall?

Once you have information, you can give it to your boss or pass it up the chain. You've already acknowledged there's a better way, so you'll be ready with solutions once management acknowledges there's a problem!

Summary

To really instigate change and adjust how your organisation delivers software, there needs to be an acknowledgement that there's a problem. That won't happen unless there's awareness.