It’s hard to do our best work when we’re in a state of panic and alarm. Frustration and stress can cause us to make sloppy mistakes or miss clear connections.
If you find yourself frustrated, it is usually best to stay away from work for a while. If time allows, try walking, talking to someone or exercising.
If it’s late, get some sleep. Often when we disconnect, our brain is able to make connections unconsciously. Although every issue feels so respectable right now, most bugs are not so important that we must sacrifice the treatment ourselves. When we rest and feed, we are much more willing to approach bugs with clarity, creativity and resilience.
Not every topic is worth a solution, and sometimes if you have given the topic the best attention and effort for a while, the best thing you can do is present the situation to your manager and together you will evaluate whether or not it is worth spending more time right now.
For some bugs, the issue is not urgent enough to justify the investment.
For very serious investigations and high priority that require immediate attention, it is still good to be transparent with your leadership – both you and the rest of your team should be encouraged to give you all the support and resources you need to succeed.
If you are a student, it may feel like you do not have that much choice or support in everything you work on, but hopefully, there are work hours and support channels you can look for.
Good professors should want to see you succeed. And if you are really at your breaking point, remember that you do not have to crush any task to finish your studies.
When we are responsible for the issue, it is important to show ownership and initiative by pushing the investigation forward as far as we know.
Nevertheless, we all reach the limit where we need outside input, clarification and even simple encouragement.
Are there experienced engineers or subject matter experts you can ask? What about affiliate teams?
Sometimes the act of formulating a question about the problem, or explaining a problem aloud, can provoke new thoughts and ideas. If your workplace has a healthy culture, people will usually be happy to help you.
Collaboration can help reduce feelings of stress and also strengthen relationships within the team.
Debugging is very similar to breaking a large knot – you often have many different wires that you can pull until it falls apart. A good engineer will continue to find new wires to pull until he sees momentum.
If you are blocked by one approach, is there another aspect of the problem that you can work on in the meantime, or a task that you can complete to still propel the project forward? Some questions you may want to go over are:
- Did I Google it?
- Can I recover the problem? If not, can anyone on my team recover it?
- Is there an open source community I can turn to for help with this technology? Can I open a Github problem (or look at an existing problem)?
- Do I have diaries to peruse? Can I rebuild the code with additional logs and run it again?
- Is there any external or internal documentation I can consult (maybe a readme / OneNote / email thread)?