Career

8 common mistakes Junior Software Engineers make

I wouldn't say I like levelling. Mainly because being a Senior Engineer means being old. Which doesn't always represent your skills and…

Fotis Adamakis
Fotis Adamakis
Senior Software Engineer / Technical Writer
3 min read
August 10, 2022

8 common mistakes Junior Software Engineers make

I wouldn’t say I like levelling. Mainly because being a Senior Engineer means being old. Which doesn’t always represent your skills and your ability to code. That being said, being old means I had enough time to make mistakes, and hopefully, someone will find this advice helpful and avoid making the same mistakes I did in the past.

Not asking for help

Programming is hard. You have to be familiar with a lot of different technologies and patterns and be able to recognise when to apply each one of them. When you start, you need someone to guide you in the right direction and warn you about things you don’t know. Experience comes with time, and until then, you don’t have to feel intimidated or avoid asking for help from someone else.

Asking for help too often

This contradicts my previous point, but asking too many questions is sometimes a problem. It would be best if you tried, at least to understand the problem by yourself, possible have an idea of what might be a problem and try to eliminate the obvious first. Recognising patterns and avoiding asking the same or similar questions is also very important. Find a balance and ask for help when you find yourself at a dead end. You only grow outside of your comfort zone.

Skipping documentation

It sounds common sense, yet I’m very guilty of this. Reading documentation can save you many hours of debugging, and it’s crucial to be familiar with the utilities that you have at your disposal.
I have seen countless times custom implementations of framework native functionality, and as a new developer, you can take advantage of this just by reading the docs. This is why it exists anyway.

Working long hours, not setting boundaries

Having a sharp mind is crucial when solving complex problems. Your brain needs to rest to be able to think clearly and avoid making mistakes out of fatigue. Having a hobby, exercising, and meditating can all help you be more efficient with your working hours in the long run. It’s a race, not a sprint.

Overengineering things

Choosing the simplest solution to a problem is highly underrated. Especially when you have just learned a new pattern, you will want to apply it everywhere and maybe often complicate things more than needed. Remember, you are not writing code for machines but other engineers, including your future self. Always try to keep things simple and avoid complexity when possible.

Not reading enough

There are countless resources out there about our craft. Reading books and articles can help you understand and become better at your job. Of course, you should pick books depending on your specialisation, but if you are looking for some generic recommendations, here are five of my favourites.

Neglecting Soft skills

Knowledge about a framework or writing clean and elegant code is only a fraction of our work. Interacting with other people is the most significant part of our day, and being a pleasant colleague is more important than everything else. Nobody likes brilliant jerks, and you should pay attention not to become one.

Breaking production

At some point in your career, you will break production. There is no science behind this, but chances are that it will be on a Friday evening. This day is special, probably because your mind is focused on the weekend and not correctly testing your code. Always be extra careful when merging something in a hurry and since learning new things is part of our jobs, maybe try to spend your Friday Evenings doing that instead. If you need to merge something risky, don’t do it on Friday and never skip the tests.

Conclusion

Feeling overwhelmed in the beginning is not unusual. It never gets easier; you have to become better. Keep smart people close to you and try to follow their steps. Keep true to your values and trust the process. Soon you will start seeing patterns, and everything will click together. Enjoy the ride!

8 common mistakes Junior Software Engineers make

Fotis Adamakis

Fotis Adamakis

Senior Software Engineer / Technical Writer

Experienced software engineer writing about front end architecture, accessibility, system design, and developer productivity. Lessons from building and maintaining large-scale frontend applications, with a focus on practical patterns that make codebases easier to understand, scale, and evolve.

Barcelona, Spain