How to Ask for Help as a Software Developer?

help
help

Asking questions at work as a software developer might be tricky. Nobody knows everything though and it’s fine to admit that, you even show strength and confidence by doing so. However, there is a fine line on that matter, there are many important points to consider before asking for help.

Regarding technical questions, don’t ask for help very quickly, resist this temptation. Instead, try to figure out the problem on your own, there are many ways to do that. For example, you can make a quick research on Google and learn what is the solution for your problem, or you can watch a video tutorial, you can have a course, read documentation, and so on.

By trying hard and going through the pain of solving a difficult problem on your own, you will grow.

Should we never ask for help then?

The answer is the famous depends on the situation! Let’s suppose you are a very experienced developer and need help with a specific technology that you are not so used to. In that case, it’s fine to ask for help from someone who knows the technology better, otherwise, you would waste some time to figure out a solution for the problem.  However, an experienced developer should always try as much as possible to solve the problem on his or her own.

Just be careful to ask for help for something you ‘should’ know before-hand if you think you should know. In that case,  doing quick research will usually do the work, you will not usually need help. Sometimes it’s tempting to ask for help right away but following this easy route, might make developers grow slowly or even worse, be judged unfairly by their co-workers.

Another thing to be aware of is to whom you ask for help, the person might help you and pretend it’s everything ok but might use that against you and slow you down to advance on your current job.

If you are a developer who is starting on your career, the ideal situation is to find a mentor in the company, someone who you can trust and will help you grow. In that case, you should try to do as much as possible on your own and usually there won’t be a problem to ask this person if you need to.

The ideal situation is to be self-reliable, to be able to solve the problem even if it’s not the best solution, to be able to learn, figure things out. However, this is not always the reality during day-to-day work. Nowadays, developers who have a knowledge gap are even more common due to the great number of technologies, therefore, it’s very likely that every developer will need some kind of help.

How to ask for help when necessary?

When asking a question about a specific problem, explain the context of the problem. Show everything you tried, show the sources you researched, show exactly the part of the code that is not working, .You can make research on internal documentation of the company as well and show that.  Make yourself clear on your message, don’t make your problem overly complex, make it simple to understand so another developer can help you more easily.

Sometimes the problem will be something simple to solve, therefore, make sure to test the obvious options, such as restarting the server, redeploying, and so on.

It’s highly important to show that you tried many things too, if you ask something that can be easily searched on Google, developers won’t be motivated to help you.

Where is the fine line to ask for help?

– Try to solve your given problem as much as possible on your own
– Ask questions if you feel you are wasting time with the technical problem
– It’s better to ask for help than being stuck for a long time when you need to deliver your task
– Ask questions if you are not expected to know a certain technology, for example, if you are a back-end developer, you are not expected to know front-end as well
– You can also use the pair-programming technique to solve a complex problem (Even if the engineer doesn’t necessarily know the answer).

One action we can take to reduce the chances of asking for help is to study/practice the technology you are struggling with at home. Mastering technology is a process though, don’t expect to be really good at technology overnight, instead, be patient, develop a process/routine that works for you to get better. Get better at your craft bit by bit, every day, you will see how powerful this is. With time, your skills will be compounded to a whole new level if you are persistent enough to keep moving forward even when it’s frustrating and difficult.

Be grateful after being helped

Make it explicit that you are grateful for the help, thank the engineer who helped you. You can even try to figure out a way to help the engineer back if you can. A very effective actions you can take after being helped are the following:

– If there is a platform to give a shout out to the person who helped you, use it and say thanks to that person
– You can also mention the name of the engineer during a stand-up, you can be very explicit (the engineer X helped me with  Java for example)
– Let the person who helped you know that you are having progress

Learn from the problem

Be sure to be asking more questions when you are being helped. If you don’t understand what is the solution, ask for details, try to understand the concept so that you can help others who have the same problem. If the person who is helping you is doing many things very quickly, try to take notes about all the steps she is performing. One of the worst things when asking for help is to ask for the same person to solve the previously solved problem.

To summarize the whole subject here, it’s not wrong to ask for help, on the contrary, it’s very common in the day-to-day work in software development. But as mentioned before there is a fine line. We shouldn’t ask for help too quickly, when we don’t know something we are expected to know, the ideal is to research and even create a POC (Proof of concept) to learn better the technology on your own at home. Elaborate a strategy to learn what you need bit by bit, then before then you are expecting you will be the one who people will ask for help, then you turn the table to your side!

Written by
Rafael del Nero
Join the discussion

7 comments
  • Very good. I totally agree with that approach. Asking for help without trying it out first or to ask for the same thing twice are bad ideas. Beginners must read this article.

    • Thanks for the good feedback Andre! This guide is not only for beginners though because experienced developers will face challenges too with unknown technologies. It makes the whole difference though to know how to ask for help in a way everyone wins.

  • Very good message. Asking for help is essential and the developer himself cannot feel limited. We must remember that in order to obtain knowledge, it is necessary to travel a learning “way”.

    • Hi Abdiel, it’s great to see you here! It’s essential for sure, even more, nowadays that so much knowledge is required to code, create systems design, deploy, automate…

      To be humble and knowing to talk to the right person is a huge time-saver! The learning way is tough and it requires constant action towards what we want to master!

      Take care!

  • Try your best to solve the problem, and try your best to create “some” solution for it. This way you can provide a lot of context to the one trying to help you, and you’ll get valuable feedback on what your approach is missing. Ask for hints not direct answers.

    • Hi Nenad, it’s very important to ask for guidance instead of a direct answer. Otherwise, it will be difficult for you to grow as a software engineer.