Categories
Monocategorized

Choking on Pebbles

Hello everyone and welcome to 2021! I thought I would start off this year by continuing to talk about positive team-related activities. So without further ado, let’s discuss how your team can choke to death on small pebbles.

Woah… Wait… What? Let’s back it up just a little bit. Because it is January, just about everyone working for a company is about to write the end of year reviews for themselves and their subordinates. This process can take days or it can take weeks depending on who controls the budgets for compensation adjustments and just how deep into Workday your current company is invested. All of the Bidness Leadership are looking at the graphs to find the best way to capture how much Value they created and why they should be at the front of the line for the stock handouts and fat stacks of cash.

As they go through this exercise, they probably have a list of projects that were completed as well as what “moved the needle” on metrics that they can put into a Pretty Pretty Presentation to Senior Leadership.

Every place I have ever worked, I have seen these presentations and the graphs that show the numbers going up and to the right. Universally, this is how businesses grow, and also how people get rewarded.

So what is wrong with this picture?

The problem is that this puts some pretty strong incentives on making small meaningful incremental steps in your product that could lead to deeper problems in the long term.

There is significant interest in getting releases to your customers on a cadence that is measurable and also that tells a particular story for management and investors. If you happen to be working for a public company, the yardstick that everyone applies to these stories is known as the Quarterly Earnings Report. This means that every three months you are going to need to have a pretty significant nugget of data and numbers to feed to your hungry investors and shareholders.

Even if you are not a public company, you may have investors who work at venture funds, or leadership who previously worked at public companies. There is a bit of conditioning and reinforcement from those roles in expecting to hear something interesting on a drip-feed basis. I am not at all saying there is an unhealthy addiction to this schedule. Okay, maybe I am.

The problem this creates is that it puts some pretty drastic limits on what you can get approved for your engineering teams. As an engineering leader you will find that you might be put on an aggressive schedule of projects that requires a pretty fast turnover from inception to release date. If you are lucky, you might have two or more teams who can stagger the release schedule so it is more sustainable. If you are unlucky, you are going to have to take a deep breath for the brisk unending run you are about to take in your particular hamster wheel.

There are also some pretty ugly side effects to the need to do meaningful releases on a schedule like this. The first of these side effects is that you will have a shot clock on infrastructure projects. This gets more and more serious the more successful you are and the older your product becomes.

The pace of tool updates, library updates, and platform updates introduces obsolescence into your project relentlessly. I have inherited decrepit old projects that still work in production with old code in a state that you cannot even rebuild from scratch without the benefit of a hoarder’s repo of old tools.

Upgrading your software to keep it maintainable and current is a huge problem. It can also be a massive investment of time. As a result, it is likely going to be deprioritized repeatedly in favor of smaller “revenue positive” projects that will give “more bang for the buck”. Expect the person who delivers this verdict to you to wink and point finger guns at you. I don’t know why they do that.

The problem there is that if you continue operating a coal-powered locomotive in modern times, you might have difficulty obtaining coal to keep it operating, or worse, you might find that steam engine parts are only available by robbing a nearby railroad museum. Not only is this illegal, but it will make train-loving children cry.

In my head I am already reliving all of the panicked hand waving and appealing to senior leadership that I have done related to this particular situation. I am also reliving all of the times that this was taken out of the roadmap in favor of incremental revenue. Unfortunately, there are a high number of times this turned out to be a fatal mistake. It is also one of the reasons why a lot of people are nervous or afraid of experienced engineering leadership on the team. If you have fought these battles and won, the only real measurable upside is “we are still alive to keep doing this again tomorrow”. “We are still here!” is not a real compelling metric.

Also, nobody in product management understands that deferring this kind of upgrading is one of the best ways to inspire resume updating by people who you do not want to have sending out resumes. The older your product gets, the harder it is to maintain. The harder it is to maintain, the harder it is to add new things to it. The harder it is to add new things to it, the less exciting it is for people to work on it. The less exciting it is for people to work on it, the more likely the people are to leave for something more interesting to work on. It is a pretty frightening slippery slope.

So if you find yourself in this situation, what can you do about it?

The first thing you need to do is to sit down and measure the effort for each of your projects. I like to use the pebbles-to-boulders analogy here. Small projects are pebbles, medium projects are rocks, and large projects are boulders. You will find that the product roadmaps for most companies are loaded with small pebbles, and sometimes will have the intermittent rock. Very seldom do they have boulders.

What you need to do next is to point out that a slow and steady drip feed of pebble-sized projects will only ever be a constant incremental improvement over time for your business.

This means if you are in second place, you will always be in second place. You can assume most times that the people above you are there because they have a good cadence of releases and growth, and it can be sustained. That means to cover ground you are going to need to create genre-busting step functions to catch up to them and surpass them.

If you are in first place, we can assume one of two things is true. 

First, we can assume that you are more successful than your competitors at shipping new features, in which case you will continue to push pebbles into the marketplace which will slowly create a drag on your business. 

Eventually, you hit a failure-state where something has a cascading problem and your dependence of consistent pebbles being released into the marketplace will suddenly be broken which opens the door to your competitors to catch ground. In my opinion, Jira is one of the best examples of a marketplace leader who ships a lot of pebbles. We will see how that works out for them in the long run.

Second, we can alternatively assume that you are not more successful than your competitors at shipping new features, in which case you are eventually going to be surpassed by them and lose your position at the front.

Very seldom do you find a product that is far out in front and stays there. If you find yourself in that position, congratulations on getting a job at Apple.

If you are not that fortunate, then you need to figure out how to change your organization’s behavior to be more successful, and generally you will find that the companies that suffer the most from this are slowly losing their forward momentum on a small-pebble strategy.

Until you point out to them that you are choking to death on those small pebbles, you will likely struggle with getting them to agree to taking on rocks or boulders as a part of the product roadmap.

Please do not promise magic silver bullets for your first time doing this. Temper their expectations that it will take a few tries to perfect step-function changes. It is not likely that you will get it perfect right out of the gate.

Be patient with this process. It is a very difficult position to be in and it will likely be a great ‘growth opportunity’ for you. Engaging with your peers to change organizational behaviors for the better is really hard and you are likely to encounter resistance at every step of the way. I assure you that it is worth it in the long run.

If you do not want to do this or are unsuccessful at getting buy-in on performing preventative large scale maintenance, you should take a deep breath between pebbles. Eventually you will be fed enough of them that you are going to choke to death on them. Hopefully you can successfully convince enough people that it is worth doing something about those pebbles before that happens.

At any rate, if this all sounds like rubbish to you then maybe you just like to eat pebbles. See how many pebbles you can eat in a business quarter—then try to beat that record!

Thank you again for reading along. I hope you find some value here. I love comments and questions in response to my weekly articles—feedback is a gift. Failing any feedback, I will give you some more of my thoughts to consume in deep contemplative silence next week!

By jszeder

This space intentionally left blank.

Leave a Reply