Wednesday 26 February 2020

Disproved: I can just react to everything and have a productive culture

Most people are familiar with the 4x4 matrix of urgency and importance that Steven Covey popularized. (Or actually misappropriated from President Eisenhower).

source: Wikipedia

Although it's true that the majority of high growth stories do include a lot of flexibility, agility, and adaptiveness, that doesn't mean that planning is worthless. Eisenhower quipped that “Plans are worthless, but planning is everything." What's most valuable in planning is being proactive--to prevent preventable crises. And if you really are going quickly, it feels like a car chase already.

How prioritizing during a rapid growth phase feels

Like cash flow crunches. The loss of an important resource. A consistent source of sales.

For example, to help prevent cash flow crises around bills for software and tools that I use in my own business, I realized I can buy annual or lifetime plans. Moreover, I can keep a cash reserve for multiple years' worth of using the tools. This way, I guarantee I'll have the option of being in this business for a much longer time horizon.

It helps shift my own focus from an early stage mentality of "low monthly run rate" which made sense as I validated different business models--to one of an efficiently run business. It also means that I eliminate the occasional surprises around not having enough cash to cover this or that bill.

Note: this is an internal change in my business only. It gives me a good amount of flexibility. All it takes is setting up a business savings account and transferring over financial buffer, so that I can sleep easy at night. In short, I am eliminating a whole category of problem in my own business with this one small tweak.

In his classic 7 Habits of Highly Effective People, Steven Covey shared a quantitative benchmark around for highly effective individuals and organizations (based on his research and work with them):

Source: Steven Covey

As a matter of habit and culture, notice that proactive businesses spend the overwhelming majority of time in Quandrant II. The important and not urgent. Such as coming up with contingency plans and being proactive, without necessarily tying yourself down and committing unnecessarily before you know what you need to.

In the example above, I still have the option to raid the financial buffer. But then I am deliberately changing my decision.

Interestingly, for people who aren't effective the numbers more or less reverse on average. Most of their time is spent doing things of low importance: quadrants III and IV. This crowds out the time needed to do quadrant 2 work, namely important but not urgent work.

Inadvertently, I fell into that trap myself.

While running an agile and adaptive process--without any real external or existential threats--it was easy to just ignore the need to be proactive. If we were honest with ourselves, most of what we did was neither important nor urgent. And it showed on the bottom line unfortunately, i.e. a team spending 2 and a half years to redevelop a product that ultimately didn't sell much anyway. Most people have some kind of a similar story.

In practice, we only really planned one sprint at a time. And that was good enough for us. Over time, I habituated my stakeholders at the time to this pattern. And allowed myself to fall into it, too. Which wasn't healthy. This was the type of product that can't just be rolled out via the internet or directly. I had good reasons to be suspicious of committing to anything beyond one sprint. If we did commit to anything, the team would need to replan everything a sprint later.

In a way, lack of longer term planning paradoxically helped in this context. Most of the volatility around the work was in the latest news on their side. Even though we knew we needed a longer block of time to get to a truly releasable unit of work, at the end of every sprint I'd hear about a new business priority--before we actually released anything.

When confronted with the need for a plan, I mutinied.

I was pretty vocal about being adaptive, later when asked to provide detailed plans, I locked up. I had forgotten what that meant. I wanted the team to be self organizing, and to be left to our own devices. But, something bothered me.

Begrudgingly, I started to assemble bits and pieces and looked through other examples in the company of "good plans" submitted by other managers. And I realized that thinking through things in more detail was helpful, especially once new products or offerings are largely validated. I'd place small details in a larger context, so that the medium term plan was internally consistent, while still leaving myself the ability to back out easily.

But planning itself is good.

For all the trash-talking about "big planning up front", I think it's worth pointing out that in an agile and scrum context, I've never heard anyone claim that planning itself is bad.

In the agile manifesto, the signatories stress they value people over process. But planning is ideally done in a way that takes into account everyone's needs and opinions. Ultimately agile values the team's need to self organize. And that includes planning, if that's what the team needs. Or what a number of teams need to ship their work.

The main reason I've found planning helpful is to realign details around priorities. If you have a large enough team, there is a car chase of details coming at you in any given moment. Being clear on the priorities and knowing how to apply them is where a purely adaptive process breaks down.

I was afraid making plans would be constraining. And only after a while, I realized that it's the proactiveness in planning that was most valuable. Not the plan itself. The plan itself is just evidence of having been proactive.

It is dangerous to use a plan as an organizational commitment device, as that shut down the ability to respond appropriately as new learnings came up. But other than that, there is a time and place for a thought through plan for a team in "execution mode" as they're going to market.

Key Takeaways

  • Even though high growth requires you to be highly flexible, planning is still a high value activity.
  • Ideally, you want to aim for spending 65-80% of your time and resources on high importance and low urgency tasks, even as you validate new business ideas.
  • As a team matures, there will be a longer time horizon of planning ahead, especially if it isn't possible to actually release at the end of every sprint.

Tuesday 18 February 2020

Why improving requires change

This isn't a how to post, as usual. Just an observation.

Photographer: Armand Khoury | Source: Unsplash

Quite often, an ambition to innovate is paired with an unwillingness to change.

Usually, the latter isn't conscious. But it blocks you from finishing or shipping anything.

It can be quite subtle. In how people speak or collaborate. In pushing back. In sub-par levels of trust.

It might seem obvious at the face of it. Yet, it's probably a common issue companies face when trying to become more innovative.

So before trying to convince anyone about a new product, you might be better off trying to introduce a smaller change of some sort, and seeing where the pushback comes from. And where the fault-lines actually lie. Even though it will create a conflict of sorts, it will highlight what you are up against.

Key takeaways

  • An ambition to innovate is often paired with an unwillingness to change.
  • Introduce a small change to test how a culture will deal with a bigger innovation.

Thursday 13 February 2020

Why "work time" reduction is futile

One of the common anti-patterns which comes from a more traditional project management toolbox is estimating work time. This estimate is later used as a tool to hold employees accountable. To help managers steer the ship, while making sure that utilization stays high. In particular, the measuring stick for good management is that employees are efficient. Over time, employees take less and less time to do a particular type of task.

Call me crazy, but this feels short-sighted to me.

If you are looking improving output and velocity of work (as opposed to employee efficiency) it goes up significantly when you have a solid team dynamic. Where people reach out and help one another, especially if they have different skill sets required to ship a particular feature. This a classic case of conventional management wisdom not tying true causes and effects together.

Ultimately what you care about is finished work. And finished work comes about quickly when a good team dynamic exists, not when individuals are efficient. To be blunt, this comes down to peer pressure dynamics among team members. For a team to work, they need to know what to expect of each other.

This is most obvious in team ball sports.

Any given player needs to pay attention to what everyone else on the court is doing, in order to figure out where to go next. Yes there is a coach on the sidelines, and a captain on the court, but the responsibility rests with the individual.

As the game is playing, could you imagine the coach getting off the bench and running after every player with a stopwatch? Telling them--one after another--to run faster? Anyone who the coach wouldn't be yelling at would slow down most likely. Because he's not getting grief from the coach, so why should he care? This might be more acceptable during practices, but even then, it takes away agency from the employee. And emotional skin in the game.

If you start measuring and tracking individual employee output:

  1. You send a pretty clear message that the team doesn't matter as much as what each employee does
  2. Success and failure rest at the individual level, how much they do relative to what their manager expects of them.
  3. The responsibility for finishing work lays on the manager's/coach's shoulders, and more importantly, doesn't lay on the employee's.

Maybe that's acceptable, and you want the extra control, but usually this will reduce your output. Because the motivation lies solely in the relationship between the employee and the manager. A hub-and-spoke dynamic among a group of people. Not a real team.

Speaking for myself, adding elements of control doesn't feel like it addresses the real issue of people not being self-motivated to work as a real team. It was kind of like buying additional dumbbells or books when wanting to shed a few kilos, like Keith Cunningham points out. It's helpful to have a one new pair, but buying 100x more dumbbells on its own won't burn the fat that much faster.

The root of the problem lies elsewhere: a misaligned team dynamic leading to a lack of individual motivation in the form of manager reprisal.

In contrast, if a player consistently gets the ball and fumbles with it or misses shots on goal, the team won't trust him. That's much more powerful motivator. They understand the consequences (to others) of dropping the ball on any given task.

Conversely, if there are a few good players who trust they can pass the ball to one another and to move their play forward, then things start to happen. Having a team dynamic where everyone chips in matters. Where people know who they can turn to if needed. So they're implicitly clear on priorities, as they enforce them from one another.

Or if you do have a star player, at least the team self-organizes around helping that star contribute significantly on the playing field.

How does overemphasizing work time play out quantitatively?

In scenarios requiring serial processing of work to ship something, like for example a software feature, you naturally start to observe bottlenecks. In particular, a lot of partially finished but unreleased work lies in the "wait states". The amount of time a given piece of work lies in between BA, development, and QA usually exceeds the amount of actual work time spent on it.

Here's a case study. Same time, same year, same product, same technology stack:

aggregate work time vs. aggregate elapsed time for all stories

This was a team that I ran when developing a new product. And what I'm showing here is pretty common. Few delivery people can overcome their "cringe factor". To figure out how much flab there is in a delivery process. In this case above, the aggregate elapsed time was over 3x longer than the work time.

Let's say we achieve a nearly impossible feat: halve the amount of developer work time without reducing the rate at which features were completed. All that would mean is that the purple bar in the stack above would be smaller. But the overall elapsed time wouldn't budge. The story would just wait longer for QA to be able to look at it.

Or halve the QA time required without reducing quality and rate of bug discovery. That would reduce the size of the gold bar. Which is admittedly a win at the story level. Because the elapsed time to the end of QA would go down.

But then you have the next step out: release elapsed time.

How much time elapses in between when all of the stories are QAed and the release goes out the door? If you don't have a continuous delivery pipeline, it could be weeks. So it doesn't matter if QA or dev go 20% faster, because the product won't end up in the client's hands until the product is released.

In practice all features are released together anyway. So even this pinkish elapsed time stack would need to be much taller when you count the time to release.

Key Takeaways

  • Increasing control doesn't help a team be more efficient, if the team members aren't motivated to collaborate.
  • Peer pressure similar to that in ball sports is a good model for how successful teams work together.
  • Strong-arming team members into finishing their work faster usually won't impact the "elapsed time" before the features/product goes out to market.