The Subtle Art Of Supporting Junior Developers
` Picture the scene: you’re known as a developer and someone you don’t know asks you a question:
Hey, Chris. I’m working on this bit of code. There’s something wrong here because I’m getting errors but I don’t know why?
You’ve got 3 main approaches possible:
ignore them
tell them to google it
help them to understand the problem, and how to find the solution.
As senior developers we often forget where some of us started: not having a clue, and not having anyone to help us. Some developers also forget what it felt like at the time: lonely, scary and like you don’t belong in “the dev gang”. That feeling is current for a lot of junior developers. We put a pretty name to it, and call it impostor syndrome but let’s be totally honest here - it’s not that dissimilar to anxiety and depression.
Imagine, if you will, you see someone on the internet you look up to in a field you want to get into, who posts content regularly, and is exactly what you aspire to be one day. A glimmer of hope appears, as you encounter your issue. you drop them a message.
Hey, sorry to bother you. I know you’re awfully busy, and I doubt you have time. But could you explain what this message means “cannot call map on null".
Your palms get sweaty as you anxiously await the reply. You begin to feel sick “am I a nuisance? Am I someone who shouldn’t be here? Just maybe I’m not cut out to be a developer”. This is where one of three things happen.
You’re ignored - days pass and nothing comes through. You get all your fears confirmed and you give up. You stop looking at being a developer and become a sheep farmer instead.
You get a reply - which says “have you tried google?” . This makes you feel just as bad - as you’re trying to get some help, and the person replies with “i don’t care” basically. This person you looked up to and wanted to be like. You become disheartened and complacent, eventually giving up.
Or you get a reply `
“hey. Thanks for reaching out. So your error message is telling you that you’re trying to call map on null. That basically means in your code, you’re probably using a variable. You think it’s an array, but at the time you’re running map on it, it’s actually got the value of null. I can’t see your code, so I’m guessing here - but perhaps just before your map, you want to do “if variable === null { variable = [] }. If that doesn’t help, if you can show me a little more context I can help you more. For future reference, you might find that googling “null map JavaScript” will get you some answers quicker- not that I object to helping”
Your role model replied! And they helped you! Amazing. Their solution worked too!
So what’s so special about the last message?
It follows a route through that really helps people to get it:
acknowledge the difficulty
explain the problem
advise a solution
advise a way of finding the answer in future
allow follow up so they understand
It doesn’t take much to support a junior - and for all that is holy, don’t ignore or tell them to read google! They don’t know what to google!