Making technical decisions

Some problems we face have straightforward, logical solutions. We'll write a line of code that either works, or it doesn't. For bigger decisions, like who to hire, or what platform to use, there are multiple factors to consider, perspective from many people, and you not be entirely familiar with each option.

Familiarity with a system is a major consideration in your decision making. If you're made a few Drupal sites and have heard good things about WordPress, you may have some hurdles on your first project as you figure out how to do things with it. It doesn't mean that it's the wrong decision, but that there is some additional context that needs to be considered beyond the platform features themselves.

It's important to realize that choosing an unfamiliar solution introduces risk. This risk needs to be communicated to the client in order to set expectations and provide a realistic estimate. There may be advantages to choosing it anyway, but it's important to take that leap together so that you will be supported when you face challenges with implementing something new.

The fastest way to get clarity is to talk to someone who is familiar with the problem. Experienced developers have seen multiple ways to implement things and can explain the advantages or pitfalls of each. Having a network of experienced professionals is key to being successful in your own career, allowing you to make decisions with confidence, and have a wider knowledge base to tap into.

Work with your team to get as much input as possible before making a decision. Share the tradeoffs and listen to opinions on what is preferred. A plat that incorporates everyone's perspective will better account for the edge cases and needs later.

For big problems that impact multiple stakeholders, it's important to clearly communicate the issue, the solution, and how it will serve needs. Clients and users can get easily overwhelmed when things are explained to them, so as much as possible, try to show through screenshots or video calls, exactly what the problem is. Make sure they understand the proposed fix, and how it will solve the problem. Don't wait until it's all built out before clearing it with them, or you may have put time into building an unworkable solution.

Tags