Don't hire until you've identified your actual bottleneck
July 4, 2022There many ways to identify bottlenecks, some more formal than others. Here are a few simple patterns to watch for.
So instead of blinding hiring new people when our team is slow, we’re interested in identifying the actual constraint that’s making us slow. How do we do this?
There are many approaches, some more formal than others. But at a glance, here are a few patterns you can look for:
Where are the queues?
Which resources have a waiting line in front of them? Common culprits in software development are: The QA team, the security team, release team, or any cross-team dependencies.
Sometimes the queues aren’t obvious. This is where a Kanban board can really help to visualize queue.
Every hand-off is an opportunity for queuing and waiting. If your backend team writes a feature, then hands it off to the frontend team, who then hands it off to the QA team who then hands it off to the release team, you have three hand-offs.
Each one of these is a potential queueing spot, and a bottleneck.
What are your external dependencies?
While you can have queues within a team, the worst ones are usually while waiting for something outside of your team. Examples include: Waiting for customer feedback, or waiting for another team to do their part of a task (i.e. the frontend team, or the QA team). External dependencies also include vendors and suppliers. Are you waiting for a SaaS provider you depend on to fix a bug, or provisoin a new account? Are you waiting for delivery of a new MacBook, because your old one snapped in two by an elephant at the last company off-site at the zoo?
For more on identifying bottlenecks, I encourage you to listen to or watch my interview with Steve Pereira on the Tiny DevOps Podcast, The value of value flow mapping.
What to do with bottlenecks
What creative ways can you find to destroy bottlenecks?
When Theory of Constraints fails
Theory of Constraints is powerful, but like all models, sometimes wrong.
You are advised to arrive at the airport two hours before your flight
Why do we have to arrive so early for a flight? How would you reduce the wait times?