Be predictable, my friend

Photo by Markus Spiske on Unsplash

If I wanted a team to be better, I’d ask them to be predictable.

“What does ‘predictable’ even mean, Adri?” you might ask.

I’m not a dictionary, but I’ll try to answer.

I understand predictability as “the ability to produce a stable flow of value per unit of time by spending a similar amount of resources”.

To do so, a team needs to keep costs stable. You know what I’m talking about. Development costs, infrastructure costs, maintenance costs, opportunity costs…

Keeping them at bay is not free, though. Our software and infrastructure degrades over time (yeah, folks, I’m talking about software entropy), so we need to actively keep it clean and shiny.

It is like a restaurant: you can’t keep on serving menus without cleaning up the kitchen. You can’t offer innovative dishes if you don’t sharpen your skills.

The larger the feature, the harder it to be predictable

So the only way to be predictable is to keep things small. No, not that small. Smaller. Smaller. Now we’re talking.

It is hard to have a variable flow when things are kept small. Things tend to run smoothly. When we take less time to deliver something, there are fewer opportunities for shit to happen.

Keep things short, so unexpected events can’t mess with them.

Also, being wrong on a large batch is expensive. But if you fuck up a small feature, well, it is not that bad.

Large batches are fragile because we have more to lose than to gain in the presence of disorder. And disorder shines in our world: time, uncertainty, lack of knowledge, errors… They all pile up to make our industry both challenging and exciting.

Wrapping up

Writing software is the best way to deliver value at a sustainable pace.

Having a predictable team is good for the team itself and also for the business. It’s a team you can rely on. It will also keep improving its environment, and others might benefit.

You want a predictable team. Cool.

The only way is to work on small batches, finish stuff before starting a new one, and focus relentlessly on improving the system.

Oh, and some stability won’t hurt.

But… Adri. How do I know if my team is predictable or not?

Oh, my friend. You’re entering the realm of the metrics of flow. We’ll get into that soon enough — stay tuned!

Originally published at https://afontcu.dev on January 13, 2021.

--

--

--

Words matter – Software product development, Front-end, UX, design, lean, agile and everything in between. https://afontcu.dev

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Coworking spaces must differentiate themselves

Why the current work culture needs to Change

Technology rescues relationships from hiring Day 1

Man sitting as he works on his laptop.

The Confidence Factor for Women: 8 Habits You Must Eliminate to Build a Million Dollar Demand

Data versus instincts when hiring

Knowledge management for service activists.

#choosetochallenge for IWD 2021

Working Without Borders: How Remote Work Is Better for Your Team (and Your Company)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Adrià Fontcuberta

Adrià Fontcuberta

Words matter – Software product development, Front-end, UX, design, lean, agile and everything in between. https://afontcu.dev

More from Medium

Signs You Should Leave Your Software Development Job

A sheet of paper with the title “résumé” is protruding from a blue folder on a wooden desktop

Sow the Seeds of Love for Software Development

Lessons from old software

Back End challenges about refactoring legacy codes