Async way of working
reduces the cost of starting something new (the other side doesn’t have to be available) which eventually kills the ability to finish anything.
»reduces the cost of starting something new (the other side doesn’t have to be available) which eventually kills the ability to finish anything.
»the countermeasure is not to deploy less often in order to not break things too often (spoiler: makes things even worse) but to build in mechanisms/practices that enable you to keep deploying often while breaking things way less often.
»The problem with any async system and way of working is that it makes it very cheap to start the work (pull it in the system).
»They are a big bet and high risk.
You can feel ecstatic, or you can feel a huge disappointment.
If your inner feedback loop is long, your outer feedback loops cannot be shorter than that one.
The shorter you make the inner loops, the more space for shortening outer loops is created, and the faster your whole process becomes.
Increasing the cost of (keeping) inventory seems to be a stronger incentive and enabling constraint for increasing the flow compared to reducing the batch transaction cost.
»Team Topologies have categorized 3 types of team cognitive load, as described here.
»Imagine your team doing pair/mob programming so you don’t have to organize discontinuous, forced, ad-hoc team-building activities.
»but you’ll most probably stay for the flourishing human connections that those lead you to.
»