KEEBER

DOT ORG

Going Fast

by

“We need to go faster”—Everybody who isn’t an engineer about ANYTHING they want to create or fix.

There is an interesting phenomenon in the development and technology world I have seen over the years: when a team / organization / company has adequate time and resources they create processes and methods for getting business tasks done. These vary in size and complexity depending on the organization from elaborate ceremonies to casual agreements in teams.

These processes may enable secure development, reduce errors, facilitate communication, or improve other aspects of task completion. They are followed (sometimes religiously)—moving tickets through Jira, meetings, sign-offs, plans, documentation—activities and tasks are completed until…

…somebody decides that some set of tasks or other project needs to “GO FAST”!

So what does this organization do? I’m sure we’ve all seen this more than once—they throw out all of the processes and procedures and keep all of the tasks.

By now you have figured out that I love analogies, I use them as part of my learning process (I learned that from my high school physics teacher) and we can use one here to examine this behavior. 

What if the task / procedure we were trying to complete was a trip to the grocery store to get a week’s worth of groceries?

Let’s suppose our usual drive—on the day we usually prefer to visit the store—is 15 minutes. Our carefully curated and maintained list (30 items) generally takes us an hour to pick up in our usual route around the store including checkout. So with a corresponding trip home that gives us a total time of 1.5 hours.

In this scenario we are going to suppose we only have an hour available to us.

Wait…where are you going, come back. I’m not sure the car is even facing the right way. So you just got in and hit the gas as hard as you could, no time for turn signals eh? Fair enough, I’m pretty sure you should have slowed down for that corner and I’d definitely wait for the police or at least a tow truck now the car is upside down in a ditch…

Using this analogy it is very easy to see why this approach is problematic. When applied to business problems I call this approach “What if we leave now?” and it may show up in a project as somebody asking “I don’t know why we don’t just start the work?” in response to one of the normal procedures or processes—such as making a reasonable estimate or plan.

In this case the desire to feel like productive work is being done eg: working on the tasks—overrides our processes.

So imagine we do make it to the grocery store with this approach, it would then look like us running from shelf to shelf sometimes checking things off our list, sometimes not, sometimes the thing we need is where it last was, other times it’s not. Hopefully we don’t slip and fall, or worse collide with another shopper.

We know instinctively how this will turn out—our list (the tasks) end up incomplete, and we likely end up exasperated and quite annoyed.

So let’s rewind to before our (possible) car accident. Perhaps now you are thinking “How much time do we have?” and that is also the name I give the second technique I have observed.

If we assume that the driving portion of our scenario is fixed (15 minutes each way) that leaves us with 30 minutes—because we have 1 hour total—to pick up our 30 items. Simple math right? We just allot 1 minute to pick up each item: we divide the time available by the tasks.

You may already be picturing yourself halfway to the dairy isle when your minute runs out. No matter if you decide to borrow some time from your next minute or go on to your next item I think we can see how this ends again—maybe we aren’t as annoyed this time but the overall process is incomplete.

At this point you may be tempted to give up, which brings me to the last “technique” I see for dealing with this which is “What if I just remind you how much time we have but essentially do nothing else?

Now, for our analogous grocery store trip you will need to bring a friend, spouse, partner, or perhaps an obliging colleague. You take your usual route (15 minutes) and shop just as you normally would. It is your partner that does the work in this methodology by telling you with a slowly increasing frequency and urgency how much time you have to complete everything.

Unlike our first two methods, we may not throw out all of our processes and procedures. Instead reminding you that you do need to follow all the rules of the road on your drive (*wink*) but 15 minutes seems like an awfully long time for the trip given that you only have an hour total. 

This may leave us as annoyed at the eventual outcome—incomplete tasks again—although this time you may have a person to direct your frustrations toward.

So, all of our outcomes have been the same, not all of the tasks get completed in the allotted time and we come home late or with an incomplete list. The power of using an analogy like this is that it becomes obvious what the problem is—compressing the timeframe and keeping all the tasks is never going to work.

So do we have some magical methodology to make scenarios like this work? Of course not (the clue being in the word magical) but what we can clearly see is that in our three scenarios we have the same outcome, we drop some of the tasks. The items that we come back with in each scenario would actually be some random sampling of the list with an uncontrolled outcome.

In the first scenario which items you manage to pick up would come largely down to luck. In the second there would be some dependency on the distance between each one and the random chance of a failed attempt within a minute leaving you near the next item. The third would depend on the order of the items on the list itself.

The solution to this is not how to do more in a given time but how to effectively plan which tasks we want to drop (without leaving it to chance) because being in control of the process gives us known outcomes, and known outcomes have a better chance of achieving our goals. 

We don’t need to learn how to “Go fast”, we need to learn how to cut corners.

Thanks to our analogy we can imagine lots of possible methods of doing this:

Is the list as refined as it needs to be? Have we done our due diligence and or are there tasks that can be removed?

Do we need everything on the list right now? Can we refine the tasks into a priority order or remove ones that we know can be completed later.

Is there a closer store, possibly with second choice or fewer items that would be acceptable given the time constraints? Are  there less complex tasks that would be OK instead?

Can we bring somebody with us? Is the list clear enough that we can tear it in half and instead of providing “encouragement” our partner, spouse, or helper can do half of the work. Also: bonus points if you would take time to refine the list to separate halves of the store.

If you are wondering if the “somebody you bring with you” is a contractor, a third party developer, or somebody from another team you get the idea of how to use analogs like this. Looking at the problem from a different perspective without the usual baggage often lets us shift and clarify our thinking.

This type of clarity may also lead you to question your original processes and procedures—the ones you threw out (remember those)—if they are not used whenever we feel like we need to compress some schedule then perhaps they either aren’t serving us, and need be be reviewed, or we aren’t who we (as an organization) claim to be. This can be especially true if we find the organization is always “going fast” and the guardrails and other things we “should” be doing have become a theoretical ideal that we never have time for.

But this is probably a discussion for the future—right now I have to get to the grocery store, while I still have time.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *