
Starting a new job as a junior developer or intern in a software company can be an overwhelming and intimidating experience. Everything may seem confusing and complicated at first. Even after the initial onboarding process, you may still be left with a lot of unknown variables. However, in most cases, you get about three or four weeks before you’re expected to have integrated into your work community. So use that opportunity and give yourself time to transition and make the process a little more pleasant while also leaving a good lasting impression.
As a Team Lead with years of experience and also being a new junior developer myself at some point, I've noticed some common "mistakes" that juniors do (or don't do) and have put together some tips to help you avoid them.
Not getting familiar enough with the company’s technology stack and project/s
Most of the time you’ll be given time to get familiar with
the technology stack that is being used, projects that they’re working on,
and probably documentation and coding guidelines.
It is essential to use that time efficiently and
get thoroughly familiar with it. Of course, it won’t be
expected of you to understand the codebase from day one, but what is
important here is taking the time to read their guidelines.
If there are no guidelines available, try to glean insight from the codebase and version control history, and don't hesitate to ask your colleagues. They’ve been there longer than you and can provide you with
valuable information about the codebase and the company’s
development practices. I’m sure that almost everyone will be glad to
explain to you any questions you might have. It is also a great
opportunity to bond with them.
Starting to code without fully understanding the requirements
Once you get familiar with the company’s workflow, you’ll be given tasks to complete. Some of the most common pitfalls I've noticed among juniors is that they start working on a task without completely understanding the requirements. While task requirements may not always be clearly specified, it's crucial to pay close attention to them and read them multiple times if necessary until you’re 110% sure that you understand what needs to be done. If something is not clear enough, ask your colleagues for clarification. Never assume; always ask.
Providing the first solution that comes to mind
Another mistake is starting to code the first solution that comes to mind without considering other options. While there may be deadlines to meet, it's best to consider multiple solutions to a problem and find the one that best fits the given situation. I believe that the first few days/weeks you won’t be given any critical tasks, so here is an opportunity to make a good and professional impression even though you don’t have years of experience.
Overlooking the “minor" things
This is something that can be interpreted in a lot of different
ways depending on the situation. But since I’m giving my personal
opinions from a more technical point of view, this is what
the “minor” things include:
Not paying attention to code formatting
This is something that most juniors/interns don’t pay attention to because it doesn’t seem very important at first but it can be an opportunity for leaving a good impression. If you’re not sure how it is supposed to be, do the same that is already done. Always match the existing formatting style instead of enforcing your own.
Not following the established style guidelines and naming standards
Not giving an effort in documenting your work as clearly and descriptively as possible
Relying too heavily on AI chats/tools
While AI chats can be helpful for coding solutions and questions, I personally don't recommend relying too much upon and overusing it for your problems. It doesn't help you develop your programming logic. At this stage, you’re supposed to be learning how to learn and gain a better understanding in your own way by using your logic and creativity instead.
Of course, there are exceptions to this. You will not always need to invent something. A lot of things are already done, and you can save a lot of time by finding the correct thing - library/solution/tool/piece of code, etc. and using it. However, I still recommend researching these types of things on your own from multiple sources. Sure, use ChatGPT (or any other AI) as well, but don’t rely on it as the ultimate source.
Summary
Starting as a junior developer can be overwhelming, but you can make a
strong impression by using your onboarding time to familiarize yourself
with the company’s tech stack, codebase, and guidelines.
Always clarify task requirements before starting, and explore multiple
solutions instead of rushing with the first idea.
Pay
attention to details like code formatting, naming conventions, and clear
documentation to demonstrate professionalism.
While AI tools
can be helpful, don’t rely on them too much—focus on building your logic
and problem-solving skills through independent research and learning.