Technology is complex and fast-moving. That’s one of the reasons we release a new Technology Radar every six months — to capture things that we think are notable and interesting that may help other teams and organizations. This environment may offer a wealth of options and solutions for technologists, but it can make it hard to make decisions — and, in turn, that makes it hard to build high quality software effectively and confidently. That’s why we rely upon something we call ‘sensible defaults’.
Sensible defaults are practices and principles that we have identified to help us deliver high quality software and simplify decision making. The term is intended to be distinct from ‘best practice’ — while best practices are a standard that should be followed, a sensible default is something that, in most circumstances, should be done in the absence of any other specific options or approaches.
They’re ‘sensible’ because they’re grounded in Thoughtworks' core values and principles. We think this makes them practical and effective starting points for achieving efficiency and cohesion across different teams and projects. They’re ‘defaults’ because they’re options we can call upon if we’re not sure about the absolute best way forward.
How it works in practice
At Thoughtworks, we use sensible defaults as foundational guidelines that ensure consistent and efficient project delivery.
Here’s an example of how it works: In a project, the product team might use the default of "continuous customer research" to gather early feedback. This then informs the design team’s sensible default of "regular user testing" — you wouldn’t be able to test at such a regular cadence if research wasn’t being done at a similarly consistent rate.
The benefit of using these sensible defaults in this instance should be clear: any assumptions and prospective design solutions can be validated before they’re implemented. It doesn’t stop there — quality analysts, for example, will then use "value-based testing" to confirm the final product actually benefits end users.
As you can see, sensible defaults are interconnected. While this doesn’t mean you immediately need to drop everything right now and implement every single one, it should be emphasized that they do need to be viewed as part of a cohesive culture. This ensures everyone is aligned toward a common goal and that the benefits of using a sensible default are properly distributed across a project or initiative.
Making sensible defaults public
Thoughtworks has always been committed to improving how the world builds software and leverages technology. Sharing our sensible defaults with the world does this — we see it as a way of promoting proven methods and advocating for an approach to technology that balances principles with flexibility.
The advantage of adopting sensible defaults is twofold. First, we believe our sensible defaults will ultimately lead to increased efficiency and better outcomes for organizations and their teams. Second, we also think the concept of sensible defaults is important, too: it’s aimed at making decision-making simpler in a complicated and sometimes confusing field and also encourages flexibility whenever it’s needed.
It’s a way of saying to the world: these are good ideas and approaches, but don’t mistake our enthusiasm for dogma.
How sensible defaults are identified and agreed
Thoughtworks' sensible defaults are identified and curated by our Global Communities of Practice. They’re not a top-down edict about the right way to do things; they’re approaches that practitioners believe are generally the most appropriate option in most situations, based on their extensive and diverse experience. They’re the end result of our collective knowledge.
Sensible defaults are identified using a specific criteria. This criteria includes how they align with Thoughtworks’ core values, how effective they are in practice and the extent to which they foster collaboration across different roles and projects — and, of course, deliver exceptional results.
Sensible defaults aren’t dogma
Although sensible defaults are generally the right thing to do, there are times when they might not be applicable.
For instance, if a client's existing framework or project requires something different, we would be comfortable not using a sensible default. What really matters is that we focus on the problem at hand — this means we need to be sensitive to the needs of the situation and be mindful of the outcomes we want to achieve.
Flexibility and continuous re-evaluation are essential in preventing sensible defaults from hindering innovation or project success; they need to be seen as a starting point. If they aren't suitable, we always make a conscious decision not to follow them.
The challenges of adopting sensible defaults
Sensible defaults require technical maturity. They might even seem like an unnecessary distraction. However, this shouldn’t dissuade organizations from embracing them and using them in their work. In fact, developing technical maturity and leveraging sensible defaults are closely related; you need the maturity to unlock the benefits of sensible defaults and you can’t implement sensible defaults without some degree of maturity. If you’re serious about both and recognize the long-term value, they help you become more effective and give your teams a better chance of delivering outputs that have an impact.
Yes, this may require some initial effort and even some careful change management. However, investing in the capabilities and infrastructure needed will have a positive long-term effect on an organization.
The business benefits
We know businesses today are eager to unlock greater efficiency and effectiveness from their technology teams. We see our sensible defaults as a key way of actually doing that. When implemented, they can increase operational efficiency, improve delivery success and reduce project friction.
In turn, the consequences of this are higher quality products, faster time-to-market and better alignment between teams — which ultimately translates to better business outcomes. In short, sensible defaults can give businesses a competitive edge.
How Thoughtworks can help
Thoughtworks can help you adopt and leverage sensible defaults through various strategies and support mechanisms:
Joint project teams. Thoughtworks can embed their consultants within your project teams to collaboratively implement sensible defaults, ensuring hands-on support and real-time feedback.
Workshops and training sessions. Thoughtworks can conduct comprehensive workshops and training sessions to introduce your team to sensible defaults, explaining their importance and how to implement them effectively.
Onboarding programs. Customized onboarding programs can be created for your organization to ensure a smooth transition and understanding of sensible defaults.
Expert consultants. Thoughtworks provides access to experienced consultants who can work closely with your team to integrate sensible defaults into your existing processes.
Mentorship programs. Thoughtworkers can mentor your team members, offering guidance and support as they adopt and adapt these practices.
Playbooks and guides. Thoughtworks can customize detailed playbooks and guides on sensible defaults, providing step-by-step instructions and best practices for implementation.
Case studies and examples. Sharing success stories and case studies from other projects can help illustrate the practical benefits and applications of sensible defaults.
By leveraging these strategies, Thoughtworks can help your organization effectively adopt and benefit from sensible defaults.
Disclaimer: The statements and opinions expressed in this article are those of the author(s) and do not necessarily reflect the positions of Thoughtworks.