Building The Right Way
If you don’t have the time to do it right, when will you have time to do it over? : John Wooden
The impediment to action advances action. What stands in the way becomes the way. : Marcus Aurelius
What is the “Right Way?”
In our experience, when approaching a problem there could be any of the following variables:
- The way the client thinks the problem should be solved.
- The way we think the problem should be solved.
- How the problem CAN be solved given current context/constraints/etc.
- How the problem COULD be solved if X, Y, Z changes are made.
So when you really think about it, there can be multiple approaches to solving a problem, and multiple appropriate solutions. The “right way” does not mean we have one singular solution to a problem. Rather, “The Right Way” is all about your approach to solving the problem. For us that means we ensure we understand the root cause(s) of the problem, the context in which a solution will be used, and we remain flexible enough to pivot if what we thought might work isn’t working, or we run into unforeseen problems.
We can’t claim to be unique here, as none of what we’re saying is a top-secret strategy that only we hold the keys to. Yet for most of us - when facing a problem our gut instinct is to dive right in and start solving things. And while intentions are usually pure, focusing on the solution without truly understanding the problem typically results in more frustration. So - let’s break down how to approach a problem, so that you can arrive at the right solution.
The Right Way
Seek first to understand, then build, test and deliver incrementally:
- Strive to understand the heart of your client’s needs - AND the needs of their users.
- Identify and prioritize top features for each iteration based on what’s most valuable and most feasible to the client.
- Create prototypes or mockups to visualize the proposed solutions and make sure you’re on the right track.
- Build incrementally - focusing only on the highest priority features first. There will be time to make things pretty or add nice-to-haves. Right now you’re just creating what is absolutely necessary to see if this will even work.
- Test - conduct thorough testing to ensure the solution works and is high quality.
- Get feedback and refine the features or structure of the product.
- Deploy - once you’ve tested, gotten feedback and refined the solution, you can feel confident that what you’re creating is actually going to solve the problem and meet the needs of your client - and their end users. Release it into the wild and continue the iterative process by continuing to listen. Allowing what’s been built to remain the “right thing.”
Get Feedback Frequently, and Fast
Time is money - every second spent waiting for an answer costs you and your partners money. Ensuring you get actionable feedback from your users as fast as possible means less time wasted and more value delivered to your clients.
Big and Visible Updates
If you don’t make your work “Big and Visible,” and elements that were originally discussed (i.e. deadlines, feature sets, etc.) have changed, all your client sees is wasted time and money.
Be Pragmatic vs Dogmatic
No two problems are the same, therefore no two solutions should be the same either. Sure, they may have similarities - but to associate a client’s problem with something you’ve done in the past and think you can just solve it the same way is almost ensuring the end result won’t be “right.” Consultants need to be flexible and practical when it comes to choosing a solution and the tools for the job. Being open to new ideas and willing to change your mind allows you to ensure each solution you bring is just as unique as the problem you’re solving.
Additional Tools
We use a variety of other methodologies and tools to ensure we’re building the “right thing.” Whether it’s automation, structured team cadences/retros, variations of agile software development methodologies, we have a vast toolbelt full of things that can help in any given situation.
Conclusion
To go back to the quote by Marcus Aurelius, focusing on “the problem” closes you off to an entire realm of possibilities. Instead - take your time to truly invest in your approach. Find passion in understanding the “why” behind problems. Truly work to make sure the solution is right for your customer, not just what you think it should be. At augustwenty, our passion is solving gnarly problems. We get energized by the process of helping our clients understand the “why” behind their problems, and work to make sure the solutions we build together are right for both our clients and their customers.
What are some ways in which you break down and analyze a problem? How do you make sure the solution you create is the right one? We’d love to hear from you!