DEV Community

Cover image for How does it feel to be a junior developer
Stefanni Brasil
Stefanni Brasil

Posted on

How does it feel to be a junior developer

When I go to events and I meet others juniors developers like me, everyone starts to talk about one thing (in fact, that’s why we get together in the first place): “it’s been so hard, but I am loving it!” So I decided to talk a little about this today and maybe help others who are in the same situation.

Your first weeks

You are so happy someone finally hired you and are excited to work with a team and develop the software. Suddenly you start to feel a lot like this:

  • You are terrified because you think you’re gonna be the intern who dropped the company’s database.
  • You hold your breath for a few seconds before typing git push origin because you are afraid you will push it to master by accident.
  • You have an idea of how to solve a problem, but you are terrified of breaking something important.
  • You move other’s cards in Trello by accident.
  • You are afraid to ask for help again to the team, they all look so busy solving complicated tasks!
  • “How am I going to ask for help if I don’t even know what is happening after spending almost 3 days trying to understand what I am supposed to do?! “
  • “How can she/he find the problem just by looking at it for like 3 seconds??”
  • “I hope I can be a great professional like this person one day!”

Some tips that may help you during this phase

After you freak out a little — or a lot — you start to think:

  • Oh no, that’s why nobody hires people without experience. They will fire me, I know NOTHING!!
  • You feel like you are a burden to the team
  • hello Darkness, my old friend

Unfortunately, this is a very common experience for junior developers. Do not let this put you down, please. This is a sign that you are persevering and you’ll be fine. Here are some tips that I’ve learned that may be helpful when working on a team:

  • Understand and study a lot about Git. Seriously.
  • If you find a command line that you don’t understand, always ask if that’s okay to use it. It’s really important to check the source of the commands and to understand how it works!
  • Write clear and self-explanatory commits and Pull Requests.
  • Read the documentation, even if you don’t understand it first time.
  • Write down commands that your team uses frequently so you don’t have to ask every time.
  • Take 1 hour per week to learn something new will help you improve your learning journey.

How to motivate yourself

For those moments when you feel like you should quit:

  • Remember that you get to every day with people who have a lot of experience and have a lot to teach you (and I am not only talking about code) and they were in the same position years ago.
  • Celebrate every small victory that you accomplish every day.
  • If you are stuck for days, ask for help.
  • Know when and how to ask for help.
  • Talk to others so you can share your feelings with other juniors and seniors too and ask for advice.
  • When you feel like you still got tons of things to learn, remember how much you’ve learned until today.
  • Work on your motivation and enjoy the process. Try your best every day, try to improve your mental health. It can become a stressful process that may make you lose all the fun about programming.

How are you doing being a junior developer? Have something to share here?Do you remember how your first internship was like? What terrified you the most? How did you overcome your fears? What do you have to say for junior programmers like me? See you next time!

This post is also here at Magnetis backstage!

Oldest comments (69)

Collapse
 
maxwell_dev profile image
Max Antonucci

I completely agree about taking the extra time to learn more git and command line actions. They're both extremely important and can lead to so many more disasters if used recklessly. My main priorities are often those, and the basics of whatever team technologies I understand the least - a lot of work is done in Rails, and learning the basics of that has helped me immensely.

As for dealing with the thoughts of fear and insecurity, I don't think those feelings truly go away. But they're an extra motivator for asking more questions and trying to take on progressively tougher tasks. My best response to it has been a few tips you had: reminding myself of my small wins, reminding myself of how much I've learned so far, and learn at least a little each day.

Another big tip I've learned recently is, as you improve, don't be afraid to trust your gut more. In the early stages it's easy to always distrust it since you need to do lots of research and double-checking for new work. But don't get stuck in the habit of this, since eventually it'll be what tells you when something is wrong before your brain knows it.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi, Max!
Thanks for sharing your experience here. The tip about trusting your gut is something that I am starting to do, having Code Review in our daily practice also gives me some confidence to do that. The best!

Collapse
 
chrisvasqm profile image
Christian Vasquez • Edited

Awesome tips Steff!

I may or may not have given it a <3 before I even finished reading it :D

Collapse
 
stefannibrasil profile image
Stefanni Brasil

haha, that's okay, Christian! I am really happy to hear that :3

Collapse
 
yechielk profile image
Yechiel Kalmenson

Awesome article!

Gives me confidence as I'm working on getting that first dev job.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

ohh, you'll be fine, good luck!

Collapse
 
yechielk profile image
Yechiel Kalmenson

Thanks! :)

Collapse
 
codemouse92 profile image
Jason C. McDonald

Great article! As a manager and trainer of interns, it's good to have a reminder of what it's like for them.

I also feel this way sometimes coming into an open source project.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Wow, I am really happy to know that I could help somehow, Jason! You seem a very good manager, worrying about it. Good job!

Collapse
 
tcratius profile image
Me, myself, and Irenne

I look forward to one day experiencing this. 😁

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hope this day comes very soon! :D

Collapse
 
yokim profile image
Yokim Pillay

"Hello darkness my old friend"

That pretty much sums up my first few months in this beautifully terrifying place. That being said, I've never been happier with the move I made to this industry.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

<3333
agree with every single word

Collapse
 
damcosset profile image
Damien Cosset

Wow, those first weeks statements are so on point :D

Collapse
 
stefannibrasil profile image
Stefanni Brasil

They really are, right?! :P

Collapse
 
allan2012 profile image
Allan Kibet

Take on risky tasks like updating a change on production however nervous they make you. It breaks the anxiety of dealing with scary projects.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Yes, thanks, Allan, excellent point!

Collapse
 
fbayram profile image
Furkan BAYRAM

That was completely fit on me. That was great article. Thank you.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Thank you, Furkan, you are not alone! :D

Collapse
 
juliani profile image
Julian Iaquinandi

I am about to start my first job as a junior developer and will treat this article as my bible :P

Thanks for posting this!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Wow, CONGRATS and welcome to the team!! :DD

Collapse
 
lumie31 profile image
Olumide

Steff, Thank you for the tips and advice packed in this piece. Looking forward to this experience soon.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

And thank you for reading! Hope you start to feel like this soon LOL
It's been amazing and I am sure you will soon be a great junior dev!

Collapse
 
shubhambattoo profile image
Shubham Battoo

This is really very helpful

Collapse
 
stefannibrasil profile image
Stefanni Brasil

yay!!

Collapse
 
vinaypai profile image
Vinay Pai • Edited

Great post Steff, here's some perspective from someone on the other end of the experience spectrum.

  • Dropping the db. It's great that you are cautious around the production DB, but the company should really have better processes in place. A new team member really shouldn't have that kind of access until they are more comfortable. At my last startup, I had a rule that NOBODY was allowed to run any sort of write query against the production database without someone double checking their work. That included me, the CTO. I made sure to call someone over to sanity check my queries before running them.

  • Same thing with accidentally pushing to the wrong branch. It's a structural issue. Production branches should be protected from careless pushes.

  • If you know how to solve a problem, speak up. If your team is good they will listen to you no matter your experience level, and ideas stand on their own merit. If they don't, find a better place to work.

  • "You move other’s cards in Trello by accident." - Again, seems like a UI or setup problem with Trello if it's so easy to do the wrong thing.

  • Don't be afraid to ask for help. Unfortunately, you will undoubtedly encounter prima donnas among senior developers, but the best senior developers (or senior anything, really) do embrace their roles as mentors. The only thing I ask is they you've made an earnest effort to solve the problem yourself first, and don't just go asking for help the instant you get stuck.

  • It's normal to feel like you don't know what you're doing when you're thrown into a new codebase, no matter your experience level. Every codebase that has been worked on for a while has its quirks and nuances that you only really learn over time. Good programmers understand and respect this and start by being very cautious with their changes. Bad ones think "I have 10 years of experience, I can start mucking around right away", and probably break things because of all the things they didn't know.

  • "How can she/he find the problem just by looking at it for like 3 seconds??" It's true that more experience will help you spot things quicker. Sometimes a problem that other people are stumped on will trigger something at the back of my head that I've seen a long time ago that leads to the solution. On the other hand, sometimes all it takes is a fresh pair of eyes. I was once stuck on something that seemed silly and called over the developer who sat next to me to take a look (she'd was about 2 months out of a bootcamp), and she immediately spotted something that I had become blind to from starting at it too long.

  • “I hope I can be a great professional like this person one day!” You seem to be smart and have a great attitude, I think you're well on your way!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

"Unfortunately, you will undoubtedly encounter prima donnas among senior developers, but the best senior developers (or senior anything, really) do embrace their roles as mentors." THIS, this is exactly what I think! I wish there were more people who think like that, but that's not only software related, right?

Thank you so much, these are awesome tips that you are sharing. Thank you so much for this final comment, sending you the best :3

Collapse
 
jfrankcarr profile image
Frank Carr

but the best senior developers (or senior anything, really) do embrace their roles as mentors." THIS, this is exactly what I think!

Based on my recent interviews at several different companies, they seem to prefer to hire prima donna (aka know-it-alls) senior developers instead of people who would embrace a role as a mentor and guide.

Collapse
 
erinlmoore profile image
Erin Moore

I DID accidentally push to master, and had to ask for help backing it out 🙇🏻‍♀️.

So now I always push with git push origin <branch-name>, even if there are shorter ways.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

LOL, this is more common than we imagine, I've heard some people saying that too and they're not junior's anymore, so I think we are fine :D

but this also teaches a lot about git, right? I learned how to organize my commits and used

git reset

this month, it was exciting :D

Collapse
 
moopet profile image
Ben Sinclair

I've been using git for what seems like a hundred years, and I still do that. Not only does it mean you're absolutely sure what you're doing, but if you scroll back up or look in your history to see what you did yesterday, it's explicit.

Collapse
 
rajaasyraf profile image
Raja Asyraf

Been there and done that! Totally agree with you. Thank you for sharing. :D

Collapse
 
stefannibrasil profile image
Stefanni Brasil

I am very glad this was useful, Raja. Good luck on your projects! Cheers.