Heads up! I work as a front-end developer focusing almost entirely in React. Some of my suggestions may not apply to every developer.
After working as a developer for a few years now, I have definitely become far more confident when it comes to debugging problems than when I started. What I wish I had in the beginning though, would be a checklist of all the places I should start looking for those times when the code just feels overwhelming. Here is my list for you, new developers.
Starting simple; have I identified the problem?
I have gone through the console errors, I have run the tests cases, I have checked that I made no spelling mistakes, what’s next? First step to solving any problem is knowing exactly what the problem is. If you can pin it down to a silly mistake such as a ‘=’ instead of a ‘===’ or a misspelt endpoint, then you’re golden.
Have I seen this problem before or something like it?
OK so maybe at this point you know what the problem is but you’re not sure how to solve it. Check the code base to see if anyone else has delt with something similar or possibly even other company projects if you have access to the source code. I would suggest checking your own or company code first before stack overflow to hopefully dodge any differences in style.
Are there tools built already that I can use to solve this?
If you haven’t checked already, check your current code base to see what helper functions have been made to see if anything can help with your current problem. Nothing helpful there? Maybe you can pull in a new NPM package or some other library to help. Though I would not recommend downloading anything new until you have exhausted your other resources.
Has this problem been solved in stack overflow or another developer-based forum?
This is not a surprise, I could have recommended Googling an answer at any point and honestly feel free to do so. Google whole errors, terminology, whatever it takes. Go to CodePen and look at example projects. Usually someone has something that works.
Has anyone on my team solved a similar problem?
Ok so you’ve exhausted most other resources, and it’s time to bring in a helping hand. Time to ask your team, mentor, or another developer for help. With any luck they have solved the same problem before, or in many cases, just talking it out with them can give you a little insight on your little problem. Just don’t do what I did and only ask for help at the end of the day when your desperate. Give people a little warning if they look busy, or if you’re working remote, book some time with them so you can get undivided attention.
Have you just been looking at it too long?
Honestly, sometimes the fastest way to solve a problem is to leave it alone for a few minutes. Go for a walk, chat with a teammate, or get yourself some lunch. Fresh eyes make a world of difference when it comes to a bug that just isn’t making any sense.
There is no order to this list and it does not encompass everything you need to solve every problem, but I hope it gives you some sense of independence when it comes to bug bashing. Cheers to you, new developers! I hope you squash every bug.