Talking to people with different levels of technical know about the work you do is part of every software developers life. From project managers to clients you will regularly be explaining something seems to need deeper knowledge of your craft than the person you are speaking to actually has. And to complicate this further, this will be to varying degrees with roles and individuals, experienced project managers for example are likely to understand a lot having been in the industry for while, much more so than a client who just wants to know when their app will be released.
The first and most important thing is to remember that you are not dumbing it down, people know when they are being spoken down to, and more often than not the person can understand the concepts of what you are explaining but are missing the terminology and years of knowledge and experience behind your understanding
The amount you have to explain, and the varying degrees of understanding your target has will differ a little as a developer but rapidly become much more as you enter the realms of technical management. This will also become bi-directional as you become the person delivering information to more senior management and from them to your tech teams.
There are a few things I’ve learnt to keep in mind, to think about when trying to explain anything to anyone whom may not know the subject to the level of detail as you.
Tell a story
This is something my biology teacher told me when I was 15 that I have taken to heart. When you are explaining anything to anyone you are telling a story. You need to have a beginning, a middle and an end. It’s no good jumping straight in at the end without explaining how you got there. “There is this magic ring. We’re going to throw the ring into a volcano” is just confusing with no middle explaining how you got from the beginning to the end.
Set the scene, what is the problem and why is it an issue. Take the journey, explain your thoughts and reasonings. Come to the conclusion together, offer your solutions. With practice this approach yields great results providing much needed context without slowing down a situation or request significantly.
The scifi approach
Have you ever noticed on scifi shows someone will spout off a bunch of technobabble to then explain a concept again with a simple to understand analogy that gets their point across. This is actually a really useful approach to consider when trying to explain to someone with little area knowledge or to convince someone that a task really needs doing. Describing your tech debt as rotten, misshapen roof beams that, despite being able to hold up the roof, are not going to survive long term or with multiple roof changes is going to be more effective at convincing someone with little understanding of in depth technical architecture than just showing off your technical knowledge.
It’s not obvious
Essentially this post could well have been boiled down to this statement “What may seem obvious to you may not be obvious to everyone else”. Explain your reasoning and your thought process, give people the time and respect, have patience and wait for others to catch up.
Leave a comment