6 min read

Inventory is your ball and chain

When is it okay to incur carrying cost for all of your warehoused inventory?
Inventory is your ball and chain
Warehoused inventory is a burden you do not need.

Show Notes

Hey everybody, check out this sweater I'm wearing. For those of you listening to the audio of this podcast, I am wearing a black hoodie with the words "YES, AND" silkscreen on the front. In another episode, I'll explain the provenance of "YES, AND" but for now, what's important is how this particular hoodie was made. I ordered this hoodie from a company called Spreadshirt (check out spreadshirt.com). They do custom on-demand, screen printing. Basically you go on their website, and you can print anything on just about anything. Shirts, hoodies, hats, you name it. Now, I went on their website at around 5 am one morning and designed the hoodie, I picked the font, I placed the design, it was easy as pie. I was done in a matter of minutes. At around seven o'clock pm, the same day, the hoodie shipped. And that means that the total lead time for my order was 14 hours for a custom print job. Holy shit. Think about the operational sophistication you would need to pull something like that off.

Obviously, you're gonna have to make a pretty big investment in automation. Because there's no way that a human can screen-print a custom design by hand in under 14 hours. Well, maybe once, but you could never scale that approach. So automation is important. But the story begins even before fabrication starts. Here's a question for you. This is literally the million-dollar question. Imagine that you are running a company that prints bespoke designs on practically any item under the sun. How do you manage inventory? You can't have a few of everything in stock.

There's no warehouse big enough to hold all the stuff you'd need. How could you possibly fund such a massive capital expense? It's impossible. How would you even know what to stock? You're making small batch custom orders. How can you do market or customer research for a market that is largely driven by whim? Inventory is the key. The reason that Spreadshirt can exist and be competitive is that they're great at managing inventory. I'm gonna take that one step further. Being great at inventory is what enables massive market disruption and innovation. If you can get a custom design delivered in less than a day. Well, that kind of kills the traditional printing model. But it also extends your reach to smaller customers who would have been overlooked in the old world. Store that away in the back of your mind, we'll come back to it in a future episode.

So I'm a tech guy, I work for a SaaS startup. Why am I yakking about on-demand printing? Well, let me ask you. Do you know of any SaaS company anywhere that can boast of a 14 hour lead time for a net new customer value increment? I can't think of one. The best I've ever heard is a 10 day lead time for a production-ready microservice. Most SaaS companies measure lead times in weeks, months, or even years. So we are getting left by screen printers. What's up with that? Is it possible that we're not as smart as we think we are? Awkward.

Well, we can catch up. We have to catch up. A good place to start would be to rethink inventory. Even in the SaaS world, you have inventory. Think about a typical product backlog, say in JIRA. Imagine that you have a backlog of about 150 JIRA tickets. That's actually pretty modest. Many companies have JIRA backlogs consisting of 1000s of tickets. Whatever the number, that backlog is your inventory. It is the unfinished raw materials that need to be processed before delivery to a customer. Well, what's the big deal? It doesn't cost anything to have a bunch of JIRA tickets out there in the cloud. Or does it? Well, whenever you write a check to Atlassian, the makers of JIRA, or 37 signals or whomever, you are paying someone else to warehouse your inventory. At scale, warehousing costs can get pretty huge. Just ask anybody who has to shell out the coin for an enterprise software license, not to mention hosting, training, administration, support, so on and so forth. The costs are rather significant. It's all ultimately warehousing costs. And it adds up.  But that's not my real gripe with product backlogs. Here's what burns my cheese. Most product teams need a bunch of lame-ass ceremonies to manage their inventory. Not to ship products. Just to manage inventory.

Case in point. Backlog grooming. What happens in backlog grooming. Imagine you have an eight-person team. You take them all offline for an hour every two weeks to go through the backlog and prune items that are no longer relevant, and to put stuff in priority order. That means that every two weeks you sacrifice a person day. In a year, an eight-person product team would sacrifice 26 person-days, almost an entire month, to talk about inventory. In reality, the loss of focus caused by unnecessary meetings probably inflates that number, but I think I made my point. If you're in a product team that is struggling to pay down tech debt, or if you're constantly under deadline pressure, allow me to suggest that ritualized waste in the form of backlog grooming sessions is kind of a self-inflicted wound. I'm just saying.

Well, what would you do without a backlog? How about solving the problem that's in front of you? If you're an early-stage startup, warehousing inventory is a burden you do not need. Focus on product-market fit. The core competency you need to find product-market fit is experimentation. Any cycles you spend on inventory management are waste. If you already have a product that customers are paying for, you have a different set of problems. Anytime you spend on your backlog is time that you're not spending on your paying customers. So if you have problems with say Net Promoter Score, or if you have a lot of customer churn, or if you're struggling to grow, you need to apply maximum design and engineering force to the product surface your customers are already using. Solve the problem in front of you. Solving inventory problems provides no value to customers. Anyway, backlogs aren't the only form of inventory tech companies struggle with. If you look around, you'll see inventory-related waste everywhere. I could blab about this forever but I'm gonna dive into one specific example. I like this example because it's a little bit nuanced.

Let's look at unit tests. Your unit tests are a form of inventory but because tests don't provide direct value to customers, you need to be extremely vigilant about managing your test inventory. Many companies will proactively delete tests that have passed consistently for six months because after six months, you're well past the point of diminishing returns for a unit test. The value that they provide is outweighed by the costs that they incur. Now, let me give you a specific example. I realized that this is a matter of some controversy. So I'll explain how this plays out in real life. I worked at a place where it took around eight minutes to pass the entire unit test suite. There were 1000s and 1000s. Unit tests create a feedback loop that should complete in seconds. When test inventory isn't managed correctly, seconds creep into minutes. And at that point, you're forcing your devs to idle while a test suite runs. Why would you do that? Now at this particular company, developers avoided the weight by pushing code into the CICD pipeline to see if the tests pass. That's sort of a variation of who we need to pass the bill to see what's in it. In other words, this team actually institutionalized a non-deterministic feedback loop that forces devs to either idle or context switch between their development environment and the CICD pipeline. If you're a contractor and you get paid by the hour, then this situation is ideal but literally, everyone else loses. Customers not least. Again, inventory is not free. Carrying costs are a self-inflicted wound.

Well, this is getting a little long, so I'm gonna close with this. Tech has reached a point where a 14 hour lead time for a net new customer value increment is possible. Absolutely possible. The tech is there. Our thinking is not. For now. But pretty soon we're gonna see tech shops began to emulate the operational model of companies like Spreadshirt. The first companies that nail it are going to be the companies to watch. Companies that are slow on the uptake...well, hold on to your hats because you're about to get disrupted. So that's all I've got for today. Thanks for hanging out with me for a little bit. Remember to follow me on Twitter @TeddyKim

I'm hiring software engineers! Check out the jobs page to see my open positions.