Working together to design technology systems requires speaking truth to “power” — a person, group or process that is empowered by a system structure to make impactful decisions. In systems, we can’t simply advocate for Kafka and be done with it. We need to find and communicate leverage points, places of power in a system where a change can have big impact.
As complexity increases, are you (too often) shouting into the wind? Do you see icebergs ahead yet fail to convince others to avoid them? Are your architecture-focused discussions more exhausting than productive?
Does the accountant understand the value of your work?
Often, when we communicate about leverage points, almost nobody believes us. The thinking and communication skills we’ve developed on the job often fail us when we face more-complex challenges. We need to come to best possible conclusions, even though we are uncertain. That is why we practice DDD. Rather than double down on code-specific solutions, we develop different, more effective conceptual approaches. Despite uncertainty.
There is an underlying skillset the nourishes and supports our ability to practice DDD or any approach that challenges traditional “power” structures. In this workshop, we’ll focus on that skillset.
First, we’ll explore the four fundamental truths:
- Conway was right: communication architects software and systems
- Uncertainty is always a factor
- Fred Brooks was right: conceptual integrity matters most
- Collective reasoning is essential: the modern hero is the person who weaves everyone else’s expertise into a cohesive, trustworthy whole
Then we’ll explore four fundamental practices:
- Argumentation: creating strong and valid solutions based on sound reasoning
- Structuring collective reasoning: thinking well together
- Recognizing conceptual fallacies
- Cultivating energy: thoughts are only part of communication, we also need self awareness, empathy and strong intuition
This talk was given virtually as part of the Virtual DDD community on May 15, 2020.