I struggle with asking for help in both directions. I often ask too early (when I should have googled it) and I also ask too late (I spin my wheels for 8hrs when a 5 min call would have unstuck me)
After much struggle here’s my general strategy.
- Don’t ask if I haven’t worked on it for more than 30 min.
- Be certain to ask before it climbs to 60 min.
- Search for the answer – and – make sure to try variations on the search term.
- Isolate the problem to as small of a code snippet as possible
- State your problem as clearly and concisely as possible (this is also called rubber ducking)
- what you expect to get vs reality
- what you have tried
- alternatives you have ruled out
- Figure out the best person (not the easiest) to help you solve this problem.
- Double check everything.
- Make sure they are free and willing to answer a question, and ask away!
- Make sure you fully understand the answer before saying “Thank you.”
- Write down what the problem was so that you don’t have to ask again.
Becoming “good” at asking questions is as much a senior engineer talent as being able to answer them. Everyone wants to answer a question, and by making it as easy as possible for them you are setting both sides up for success. I also find that merely starting the process above often results in me finding a flaw in my logic, or a search result that I had previously overlooked.
Learning how to ask for help from a Senior Developer can really strengthen your self-reliance because knowing that the answer is only 7 steps away can give you great confidence to keep trying.