Years ago I picked a fight with my best friend’s boyfriend because he wasn’t looking and indicating when he changed lanes. “There’s nobody there” he replied. I learned to drive on the LA freeways and I know that in the blink of an eye there can be another car next to yours. You always look. You always indicate. Most of the time you are right, there is nobody there. But that time you are wrong might be the last time.
Fortunately for everybody I am not a driving instructor. I work in software. But the same rules apply. If you are going to pivot, you need to let people know. Don’t assume it doesn’t impact anybody else.
Recently I was working on a re-design that wasn’t going particularly well. There was one area of functionality where we could choose to retain the old design or forge ahead with the new design. There were a lot of edge cases and secondary workflows in this area so different developers had tasks that were impacted by this change.
So I sent out an IM @all to let anybody who wanted to be part of a quick catch up to join us. We ended up with two POs, our QA lead and a few developers getting together to agree on the overall approach so that they could each go forward with their individual tasks. Stick with the old design or continue on with the new one.
Half way through our meeting the Director of Engineering sent us an IM to say that the Vice President had already made that call. The decision had been made to go forward with the new design the week before.
It wasn’t a bad decision. I probably would have made the same decision myself. I think he made the decision assuming we were mostly done when in fact we were only mostly done with the ‘happy path’. Nevertheless, we could deal with the edge cases and secondary workflows and we all agreed the new design was better.
The point is the VP didn’t indicate. He didn’t look to see who would be impacted if he changed lanes. He didn’t update any of the tasks to let the POs and developers know of the decision that had been made. In this case, none of the people working on the tasks knew of the decision that had been made.
It’s not always practical to have everybody in every meeting. Nobody wants endless documentation and discussion but if we are going a different way, everybody needs to know.
This happened early in our Agile transformation. I’m not saying that it never happens any more but Agile practices are protecting us more now. Agile ceremonies may sometimes seem like overkill but they are actually a good way to indicate your movement to a wider group rather than assuming that you aren’t impacting anybody else.