1) Design and plan the solution before you start coding
I remember when I was a beginner programmer, as soon as the requirement’s document was available, and the acceptance criteria were added to the user story, I used to fire up the IDE and start coding. Very soon I realized that this habit is slowing me down instead of making me faster.
Breaking your task down into smaller, simpler steps and having a plan for the solution you will use, will help you to find most of the requirements gabs very soon.
Avoid starting development before the requirements are clear because even a small misunderstanding in the requirements will cost you a lot of time if you realize it after you finish with the development of the feature.
2) Getting stuck is part of the process, is totally normal
I remember times when I got stuck for so long that I wanted to bang my head against a wall. I know it’s hard and frustrating. If you cannot find the solution in Google, ask in a forum, or ask a colleague. Step away from it for a while. Go pour yourself a cup of coffee. Take a walk maybe. You could also relieve your mind by tackling another simpler problem that you know how to solve. Then, come back to that frustrating problem with a fresh mind, and you’ll be ready to deal with it in a more positive state of mind.
You can view frustration as a sign that you’re getting outside of your comfort zone. If you want to learn stuff, you’ll encounter problems and most probably get stuck at some point. But you’ll get over it in the end. It will make you stronger and wiser.
3) Complain about other developer’s bad code
Is there any point to spend your time complaining about other’s code? It’s just a waste of time! A better approach is to use these bad practices as examples to avoid and fix as much as you can. Also, if the developer is still in the company he will appreciate it if you talk to him and explain him the issue with his coding.
4) Stress and work until very very late
Have you ever listened that when developers are tired they are making x2–5 more bugs and mistakes than when they are full of energy? Have you ever stayed until late to solve a problem and the next day you find out that there is a much simpler way to do it? Working until late doesn’t mean you are having a lot more things done!
5) Take responsibility and ask the management to approve budget when there is a need that doesn’t provide direct benefit to the users
I used to have the impression that management is only interested to see features been implemented quickly and they don’t care to spend budget on refactoring tasks. This is absolutely wrong! I have to admit that in my current role we got approval from the upper management for a lot of refactoring tasks just by explaining the benefits of each one.
Some examples of these tasks are:
- Restructure app store – redux
- Improve authentication implementation of keycloak
- Update package.json, configure webpack
It’s all about how you present these ideas!
I hope you enjoyed reading this article and could take away something with you. I would really love to hear your opinion on 5 Lessons I’ve learned as a Beginner Developer.
Please feel free to share this article on any social media channel!