The title is confusing so allow me to elaborate.
When I first started taking software development seriously, I didn't have a mentor. We could go into the psychology of why established developers aren't always friendly with beginners - but it doesn't seem necessary. It is a well-known punchline that Stack Overflow has discouraged more than a handful of beginners.
When I was just getting started I would often pay a random experienced developer I found on LinkedIn somewhere in the ballpark of $100 to talk through a problem I was stuck on. The call might last 15 minutes or 45 minutes but needless to say I exhausted all of my options before doing this.
Now that I am reasonably competent, it seems that I'm in a position to really make someone's day. I have found that if you tell a beginner that they are welcome to reach out to you if they get stuck, they almost always will. If you jump on a video call with a beginner, usually they are trying to accomplish something very simple. You may have spared 15 minutes out of your day to help a perfect stranger, but that 15 minutes may have prevented them from wasting a month moving in the wrong direction.
I can provide a list of anecdotal information but instead I would like to encourage the more experienced developers to think back to a time when you were stuck on something very simple just because you were missing a small piece of context. Maybe you took a course and the instructor took something for granted that you really needed explained.
I have found that the small investment of time that I put into helping the occasional stranger seems to have a disproportionately positive effect on them. No matter where I value my time, 15 minutes of it is an order of magnitude more valuable to a newbie developer than most other people.
Of course there's a caveat to that. Time is your most valuable asset and you should never write that off. I also believe that what I'm proposing isn't completely selfless.
When I help a beginner, I like to think that it's an opportunity for me to reinforce my knowledge, network, and make someone's day all at once. It feels good.
I would like to encourage anyone who stumbles across this post to think back to a time when you've wasted days, weeks, or even months working on solving the wrong problem. Think back to the last time something clicked for you in a really meaningful way that caused you to start over instead of refactoring.
I remember what I needed when I got started. I needed an experienced developer that was willing to spend 15 minutes talking through a problem with me. I needed someone with a real world perspective to gently nudge me back on track. I needed to feel like I wasn't massively inconveniencing every developer that I spoke with, simply because I was lacking some insight.
I've been making an active effort to be that mentor to other people. It's not surprising that people are incredibly grateful when you spend a few minutes helping them out, the part that is however surprising - is that I think I've experienced more growth since I've opened myself up to do this.
I hope to see the culture shift to be less critical towards the beginners who are often already uncomfortable asking for help.