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!

Latest comments (69)

Collapse
 
jayanika profile image
Jayanika Chandrapriya

As a boy the anxiety is x2 than how you have mentioned

Collapse
 
radoslavgrn profile image
Radoslav Nikolov

My advice unlike others is to think about what solutions are needed for the company and create them, thinking out of the box, mentioning your ideas. You can always learn VCS, frameworks or other languages but the software developer job is and will always be to create solutions for the business need in code, that's why algorithms and data structures are so important not the technologies you are dealing with. Find a solution about a certain business problem or take another solution and make it better and you will always have a job, the business needs are always first, the company will integrate you into using their VCS and tech stack if you are junior but won't teach you how to be creative and adaptive.

Collapse
 
jaepass profile image
jaepass

+100 on learning Git! Wish this was emphasized while in school. All your points totally sung to me!

Collapse
 
fahrenholz profile image
Vincent Fahrenholz

There's one advice I miss pretty darn much in this: I'm currently working as a senior, but I've changed companies not so long ago. Don't think I'm not experiencing exactly the same fears ( do something stupid, be stupid asking for help, say something stupid, making an enormous mistake,...) on a daily basis. To be honest, most of the time it doesn't seem to me as if anyone in the industry really has a clue.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Thanks for adding your experience, Vincent.

Collapse
 
ssommerit profile image
Shawn Sommer

Nice post Stefanni.

I think one of the best pieces of advice I got for this back when I started out was to, in a sense, celebrate the small victories.

Every time you push a fix (let's face it, most juniors start out doing smallish bug fixes) and you see it working in production you build confidence. When the customers get it in their hands and they are happy that a feature is no longer broken it can be a tremendous boost to your confidence.

My first "big test" as a junior was during a trade show that my boss was attending. I was maybe a couple of months in as a junior. I got a call at around 4:00 from my boss that he was set to present something the next morning and part of an integration with another system had recently been broken. I had never worked in the integration's code and now I was looking at it for the first time under some degree of duress. I was short on time to get this fixed. It was scary as hell, I didn't know what I was going to find before I looked at the code. I knew that other parts of the code were a mess, if this part had been a mess too I would have been in for a long night. The senior devs had already left for the day so the fix was all on me. Myself and the QA team stayed a couple of hours later than usual, me fixing, them testing. By 6:30pm we had pushed the changes to the demo server and my boss had his first look. It worked and my boss was extremely grateful that I was able to get the fix in for him. It built my confidence and had the side effect of building my bosses confidence in my abilities.

After that I became the point person on a few of our integrations and was considered "the expert" on one of them. Even nearly a year after leaving that company I still get occasional emails from the senior devs about some aspects of the integrations I knew well.

When I started programming for the company I also got to know their source control solution well. I downloaded Vault to use at home. I never became a vault guru or anything like that, I just wanted to be familiar with it enough to get the job done.

If I got stuck or didn't understand something(LINQ was very good at confusing me at first) I would dig for a while and try to understand it. If I still wasn't able to understand it after some time I would ask the senior dev that sat in the cubicle next to me. He would perch on the divider between our desks, I would angle the monitor towards him and point to what I didn't understand. Then I would slowly walk though what I already understood. It was usually a sort of "this does this, and this does that...but what does this do?" kind of question. If it was something simple that I was missing he would say "you know this, just think a little more", if it was more advanced he might give me the answer or at least point me in the right direction if I was completely off track in my thinking.

So, in short, how I learned how to deal with it was this:

  • Get to know your tools, you don't want this to be a stumbling block when you are trying to release something.
  • Celebrate the small victories, every bug you fix helps someone else do their job better.
  • Take notes. Whether it is notes from a meeting to help you remember something, commands you need to remember for a tool, or just notes to help you with what you are working on. I carried a spiral bound notebook with me almost everywhere at work (never knew when someone was going to say something that I needed to remember) for the first year or so.
  • Try first, then ask questions. Explain what you do and don't understand when you ask for help. Show that you have put effort into solving the problem, it helps tremendously. Extra bonus points for if you get to explain something that a senior dev doesn't understand to them.
  • This one is important. Don't be too hard on yourself for not knowing something, nobody knows everything.

The moral of the story is just to keep chipping and chopping away at things you don't know. It will be hard at times. Sometimes you'll want to give up and say "I don't get it, maybe this kind of work isn't for me" but don't. Those hard fought victories are the sweetest of them all.

Collapse
 
wiz profile image
wiz • Edited

Gone through the same in my first internship but it feels great in the end ...huh! "what an awsome journey I had !! xD"

Collapse
 
micuffaro profile image
Michael

I am very excited to say I will be in this position less than a month from now, moving to a junior dev position from an IT support role. This post is gold and I will treasure all advice in it and in the comments :) wish me luck!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Congrats, good luck! :D

Collapse
 
sur0g profile image
sur0g • Edited

Speaking of that reddit loser "who dropped the company’s database". It's not his fault! I can't even imagine someone can include ANY of the production database parameters in a readme file so this fuckup refers directly to the person who wrote that readme file, indeed!
Typically, I get those setting in about a month or two after i'm involved into the project.
Do not let juniors even a chance to break something in real world

Collapse
 
stefannibrasil profile image
Stefanni Brasil

I see this as an example of how most companies are not prepared at all to have juniors... but this is a question for another post. But I totally agree, thanks for commenting!

Collapse
 
s2rgi0 profile image
sergio • Edited

I finally got the call to do the technical interview i felt it went well, we where actually jokking and having fun with my interviwer. Next day I get an email, you are continuing the selection process and they gave me a code challenge to do, he told me, any questions, just let me know,really anything he said, ok i asked him a few questions, i was super stoked couldnt even concentrate, two days go by I hadnt answered one of his emails. Then he took very long to reply my questions .finally at the end of the challenge i shared my github repo link with him,he never answered back, I feel this guy got butt hurt because I didnt reply to his email in like two days, then I never got back in his good graces, am I at fault here? maybe I am, but I feel thats lack of professionalism on his end .. thats all . I feel I want to troll this guy hard but idk .. how could he do that to me :(

I was so in ..

Collapse
 
stefannibrasil profile image
Stefanni Brasil

That's is pretty common, believe me. But you can learn a lot from every experience, even like this. Don't give up, you're a warrior! =)

Collapse
 
uegnet profile image
uegnet

What if after 8 months you still feel much of this? And it’s more like “It’s been so hard, and I’m not really enjoying it"? After 6 months you had a panic attack so bad you where almost committed to an emergency room at a mental hospital, and the depression and anxiety still lingers after 2 months .. is this field of work not for you?

Collapse
 
jenbutondevto profile image
Jen

Hey! I'm sorry to hear this too. I went through something similar. I was working two dev jobs for a year, about 4 days as a swift paid internship, and 3 days as a web dev. I was employed as the web dev first, and quite frankly, I didn't enjoy it. I was slow at tickets and would give me any excuse to not do them. It actually meant that I had to work late to get the tickets done. The overwork and stress was a trigger to my severe depression, if anything, one of the major factors. I did have to have therapy which is finished now but I am still on medication.

When I was in the office as a swift intern, the work was great, I really enjoyed the language and company culture. The CTO was understanding as were the rest of the team, generally great people. I've moved on from both places and now a jr fullstack dev where I'm still happy.

Please don't doubt your skills as a dev too much, especially if it's making you sick, you were hired for a reason. And don't overwork yourself! Please also reach out if you're having a tough time. Take care! I hope you feel better soon :)

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi!
So sorry to hear about this. I think that when that happens, it's better to talk with other people who can really help you. I have anxiety and I know how that feels, but I am getting better since I started therapy last year. Please, take care. Let me know if I can help with anything else. Trust me, I know that feeling but you don't have to go through that all by yourself.

Collapse
 
uegnet profile image
uegnet

Thanks, yeah .. starting therapy soon, and I'm lucky that everybody at work have been great about the whole thing.

Just so scared that I won't be up for it. Especially since it has taken me almost 10 years to get back up from some other bad stuff, quitting my first passion education because of chronic tinnitus, aborting the first CS degree attempt because of cancer etc... you know, just to crash again.

But yeah, let's hope the therapy helps, good to hear it has helped you :)

Thread Thread
 
stefannibrasil profile image
Stefanni Brasil

that's great that people at your work are supportive! I am sure you'll figure it out, you've been through a lot, you're strong. If you need to talk more feel free to reach me. I know how talking helps. Take care :)

Collapse
 
tamouse profile image
Tamara Temple

as one of those sr. folk, i love this article. not everyone likes to teach but some do, and don't mind answering as many questions as you've got and might even ask you questions. thanks, I'm sharing this around

Collapse
 
petivagyok16 profile image
Peter Palocz

I agree. My first weeks/months looked exactly like you described above. :D It was exciting though, because i knew i've achieved something in my life (the first time ever!) on my own. So i knew im going to be okay somehow, i would manage to keep the job or get a new one if necessary, no matter what. CodeAcademy and some great Udemy instructors (Maximilian Schwarzmüller, Mosh Hamedani, Anthony Alicea) helped me the most. They are the best teachers i have ever met.
Keep it goin guys, it's really hard, but you can do it, everybody can do it. I wish you strength and success!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Yes, Peter!! Awesome advice =))

Collapse
 
netanelravid profile image
Netanel Ravid

Wee all were afraid to do things when we started our journey, but it's important to remember that every senior dev was a junior at first.
Do not hesitate to do mistakes, even if it will coat your job, by doing so you will learn faster and sometimes it will reveal for you new things, release your fear to do something different, and paid off eventually.
One last point, Our job is not the mandatory point in our journey, but our unique donation to the world eventually.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi, Netanel! Yes, agree with you. Thanks for sharing here your thoughts =D

Collapse
 
eliabe45 profile image
Eliabe França • Edited

In the beginning I felt that my code was just too bad, not otimized enough etc. I started to work as a programmer in a startup, the entire team wasn't too experient. I've been working as a programmer since 1 year, I have improved my skills significantly since then, but there's still a lot to learn.

Legal ver uma pessoa do Brasil aqui! :D

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Olá :)

Collapse
 
abderrahim96 profile image
Abderrahim Taleb

Thanks, I really need this post

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi, welcome! :)