DEV Community

Mario Loncarek for Bornfight

Posted on

5 tips I wish I knew as a junior developer

Here are some tips for junior developers or everyone who just started taking interest in becoming professional in the area, but especially for those who want to progress as quickly as possible. These tips come from my own personal experience and from mistakes I made which resulted in stagnation of my progress.

1. Kill the ego

This is the most important one. Stop thinking that you already know everything. Stop trying to get attention to show how much you know. Stop saying “I know that”. Relax - everybody knows that you are a junior, they know how much you know and they shape your tasks to fit that fact.

Coming into an agency environment for the first time in your life and thinking that you know something is a good sign of the level you are on. Know that every junior is a company’s investment for the future. It’s not expected that you make money for the company right away because you could not be independent in your work - when you’re a junior, there will always be someone checking after you, mentoring you and helping you when you get stuck. It's OK not to know everything and accept that, you are here to learn and that is what being a junior is.

Killing your ego is the first step in making progress. Thinking that you know everything is the biggest blocker you can do for yourself, and you will not progress or grow until you completely eliminate your ego. Stay humble, hustle hard.

2. Request a good mentorship

Now that you are ready to really learn and understand where you are, and on your path to becoming a better developer and worker, it’s time to understand how important it is to have a good mentor. I was very lucky to have the best possible person to mentor me, which made my skills skyrocket in a year or two. If you don't have one, request this from your company first thing in the morning. If a company would not provide you with a mentor, leave the company, that's not a good place for a junior developer, and it also shows red flags about how other aspects of the company are handled.

Good mentor is a life hack in becoming a really good developer and useful for your company in much less time than it would take you alone (we are talking years here). A mentor will give you all of the answers you need many times faster than Google or Stack Overflow will. Take every advice you can from a mentor, squeeze as much information as you can and absorb like a sponge. Realize what mindset you need in order to be on your mentor’s level. It’s really important to learn how to listen - you are here to ask questions and not to be smart. Insist on constant code reviews, and insist on them to be very critical, and understand that critical code reviews are for your own good. Never take them personally.

Never forget to respect your mentor because he is putting a lot of time and effort into making you a good developer and that is a very hard job to do, because knowing how to be a good mentor is a science on its own.

3. Show initiative

If you want to stand out as a motivated worker, show initiative. That’s what separates people who are only doing their jobs from someone who wants to grow constantly. And that’s what being a good worker really is - a person who is highly motivated and shows initiative. That kind of person adds value to the company and pushes things to be done.

Give constructive suggestions. Take the hardest task that no one else wants. Take ownership of the things you are doing and take responsibility for how they are done. But try to be useful while doing it, don’t just do things for the sake of doing them to show off - meaning don’t be fake!

4. Be the hardest working individual

Work hard and stay hungry. Seek to be the best developer in your company, but compete only with yourself. Not everyone has the same timeline, so never compare yourself to others. You are on your own path and things will come - and that will only depend on you.

Difference between being good and being great is proportional with the hard work you are willing to invest in your skill. Most of the time this will mean going an extra mile in your free time. Having a good life/work balance is important, but I do not regret working hard after my 9-5 job when I needed to understand things deeper because it helped me to get where I wanted to be and to learn much faster.

5. Understand how business really works

Don't think about the money at all as a junior developer. Only focus on learning, progressing and gathering real experience. You want to be on a level on which you are useful for the company and you can create real revenue with the work you do. Until that point you really don't have many arguments for some crazy salary. Money will come naturally, and a good company will never exploit your level, so don’t worry about being hungry, or recognize another red flag of a bad company.

But don’t fool yourself - realize early that when talking about the business side of everything, in the end it’s all about the money. Your salary depends on how much money you can earn for the company through your work. Companies can not do business if they are losing money. That's why employing a junior is an investment for the future of the company because companies lose money until you can be independent in your work and become useful. That also means that your salary will be bigger with more useful work you can do if you're into the money thing.

Of course, you can make more money on your own, but you will never become a great specialist if you don’t start working in the company first - that is where you will be given real experience, big projects and the best possible education. That’s all the things you will not get as a junior developer going on your own. And in my opinion, that will slow your progress - and we’re talking about years here.

Summary

These are the tips that would have helped me a lot throughout my junior years. What do you think about them?
Do you have any other tips or disagreements with any of them? Let me know in the comments.

Top comments (18)

Collapse
 
jamesthomson profile image
James Thomson

Couldn't agree more. Work smarter, not harder. Burn out is real and it sucks the life out of the joy of dev work. You're much more productive in the long term working at a normal pace than you are working OT everyday and grinding away for months.

Collapse
 
renatoruk profile image
Renato Ruk • Edited

Practical, concise and realistic approach. Hard work and consistency always win over talent, at least in my book. Good things take time. Bravo for the article, I liked it a lot!

Collapse
 
marioloncarek profile image
Mario Loncarek

Thank you Renato for being one of the mentors on my path. Will never forget the effort!

Collapse
 
renatoruk profile image
Renato Ruk

You're welcome Mario, it was an honor. Thank you for being such a hard-working individual! Your effort and persistence is inspiring.

Collapse
 
siy profile image
Sergiy Yevtushenko

Exactly. Actually, I wish I had found work/life balance when I was junior. Every time I was burn myself, it took weeks (sometimes months) to gain motivation and restore peak performance.

Collapse
 
freddymichael profile image
FreddyMichael

Man oh man oh man.

I tell this myself ahead of time and then I’m always like in a hurry because I want time to move faster but in all honesty I don’t want to get older. Good article, good read to. Ima favorite this.

Thanks for the share.

Collapse
 
siy profile image
Sergiy Yevtushenko

Instead of Stop thinking that you already know everything. I'd say Be sure - you know nothing and soak up knowledge as sponge. :)

Collapse
 
codewithyaku profile image
CodeWithYaku

I believe many other devs may critic this article because of the work ethics that a junior needs to develop before he can become a senior engineer. To be honest my opinion is that sometimes you gonna have to go through those burnouts before you can really master the skill of being a senior developer. It's hard especially with the demanding nature of our current evolving technology, however most of the success stories they all involve some level of sacrifice to be achieved

Collapse
 
marioloncarek profile image
Mario Loncarek

I decided not to answer any comments because some of my opinions are not suited for everyone so there would be no meaning in explaining myself to each person, but your comment is on point with what i tried to say so thanks for that.

Collapse
 
energeticpixels profile image
Anthony Jackman

Amen!

Collapse
 
valeriavg profile image
Valeria

Most of these are valid for all developer levels! Spot on 👍

Collapse
 
franakimiles profile image
Franakimiles • Edited

When assembling a dedicated software team mlsdev.com/blog/hire-a-development..., make sure you choose professionals who have a background in the field of expertise that your business requires. Having multiple tech experts on your team is not a good idea. You want to have people with the right expertise to meet your needs and provide guidance. Having these individuals in the team will ensure seamless knowledge transfer. The best teams will work together in a way that benefits all parties. In addition, they'll be less likely to become frustrated if you don't follow their instructions.

Collapse
 
vishal_naik profile image
Vishal Naik

i like it

Collapse
 
kwing25 profile image
Kendra Wing

Great article! Really good advice. As a junior developer myself I know the challenges. I've really been trying to connect with other Developers to get help. Any advice for finding a mentor?

Collapse
 
leetickett profile image
Lee Tickett

Contributing to a big open source project might be one way to get mentorship from outside your organization.

I've been contributing to GitLab for a few years and the team there (and certain individuals) have taught me more than I could ever imagine.