Topics for Continuous Communication
- Daily scrum blockers and help requests
- regular statements of mistakes, alternatives or concerns
- Psychological Safety
How does this apply to me as a developer?
Why does one need to continuously communicate? What benefit does that bring to both the developer and the company? Isn't it more efficient and a better use of my time if I complete what I'm working on and not bother others?
What is the secret to effective continuous deployments? Small batch sizes, fast feedback, and quick iterations. How can you work with small batch sizes if you don't communicate about small items of work? How can you get fast feedback if you don't communicate often?
People are another, slightly slower, system which one needs to interact with to release software. After all, the entire purpose of creating software is for people to use. People provide the context for more feedback, helping you build the right thing and not just the right way. This is why the agile manifesto favors people and collaboration over tools and processes.
But how can we communicate without slowing down our progress as explained by small teams and the mythical man month? Whenever you encounter some friction, or encounter the unexpected, make all stake holders aware of the new information. Don't be embarrassed, and don't be afraid to speak up about the new challenges. Psychological safety is important to enable members of the team to feel confidant enough to speak up and create awareness. If a member of the team is afraid to speak, afraid they will be blamed or berated for encountering a problem in the system, then the system will continue to deteriorate and will not get better.
Failure to communicate is a “code smell” for a team or company. It is what keeps estimates from being off schedule, and coworkers being upset when the estimates are unreliable. If communication was open and free, then the estimates being wrong would have less impact, because each member of the team and the company will have the knowledge and understanding needed to adapt.