How To Stop Being A Junior

Being a junior has a lot to do with a state of mind, besides technical skills. I want to tell you how I changed my “junior” state of mind and how I was able to give value much faster, which translates into a better salary, roles, and opportunities.

David L. Rajcher
7 min readSep 9, 2022
don’t wait!

Tip #1: Don’t Wait

One mistake I see juniors do is “waiting”. Waiting to be told what to do, waiting to be told how to do it, waiting to be promoted, waiting to move to another project… waiting, waiting, waiting…

Instead, we should take as much initiative as possible!

  • Does a new project start? raise your hand!
  • A difficult bug lurking? raise your hand!
  • Moving to microservices? or to a new cloud service? h-h-hand!

When I heard that the company I was working for was planning to switch their frontend stack to React, I read about the best React architecture and trendy tools and came up with a tech stack that I recommended them to use.

This gave me the opportunity to eventually lead the entire transformation, which took my career and skills a few steps forward.

“But What If I Can’t Do It?”

Well, if the new project is really out of your league, your manager should be responsible enough to tell you that you are still not ready or to at least provide you with the time, resources, and help needed.

So worst case scenario, you volunteered and were not picked! You still showed enthusiasm, motivation, and courage. You showed that you are truly a team player.

Tip #2: Improve Processes

As a team member, you can give a lot of value by helping to improve aspects of the work that are not necessarily technical.

Working on software, there are many processes in place — from the way the team is planning its goals, executing them, dividing the workload, reviewing the code, finding bugs, communicating with each other, learning from past mistakes, and many more…

My point is, that you can see where you find difficulty working in the team and come up with ideas on how to make it better.

Improvement #1: The Onboarding Process

No matter your technical level, one thing that you can help the company to improve is its onboarding process.

This is the first process you will be experiencing as a new employee. Especially when you are a junior, your tasks and responsibilities might be very unclear (at least to you).

When you finish with the onboarding process you can take initiative and propose to improve the process by adding all the missing pieces (that you had to deal with).

Present these suggestions not as complaints but with solutions and ways to already help the next new junior coming onboard.

Improvement #2: Communication

One thing that most teams can improve on is communication. Usually, the team’s “daily” (or the “standup”) takes wayyyyy too long, and it is not really clear to the team member who is doing what.

Two main reasons that I found for that are:

  1. Developers get into the nitty gritty of their technical issue
  2. People don’t come prepared and need to think during the meeting about what they are working on

One thing you can propose, which I did and helped my team greatly, is for everyone to summarize their points into the following template: Done, Today, Blocked, Further Ahead.

The idea is to summarize what you are working on in the most non-technical way. Developers should help each other avoid too many technical terms and avoid going too deep into the problem.

If another developer needs technical help, the “daily” meeting is not the place. All they need to say is that they need help to accomplish the goal, and set a meeting with the relevant people to solve it.

More Improvements

Working in a team, there are many more improvements you can make, I just gave two main ones as an example.

You can improve on the way the company and team are tracking issues, tracking bugs, connection, and communication with other departments, time management, workshops to improve the team knowledge, arranging game nights to get closer to each other, and endless more potential…

Tip #3: Self Improvement

It is very important to “stay ahead of the curve” and make sure we always push forward to learn new things and to be exposed to new technologies, frameworks, and techniques.

I recommend doing as much studying as possible during work time. A good place to find as a junior is a place that will allow you to learn and research on the job.

I also recommend investing some “free time” in learning to code, but ideally, your “free time” should be invested in learning technologies that you want, and might have no connection to your work projects.

I highly recommend speaking with your technical leads and colleagues about wanting to learn more and to improve and seek advice and guidance.

This is also related to the “take initiative” tip. Taking on projects at work that challenge you and force you to learn new things is one of the best ways to move forward.

Tip #4: Asking For Help

I often see students and junior developers asking for help by just stating that they have “a problem”.

Communicating in messages can be an important way to avoid interruptions and achieve a flow state, but often, there are too many “noises” over the chat.

In order to avoid interrupting as much as possible, it is important to save time and give as much information as you can.

This way, the people that can help you don’t need to chase you and ask additional questions (or at least, they have fewer).

What to do

  1. What is your problem?
  • Add the error message
  • Explain what is not working

2. What was supposed to happen?

Explain what is the wanted behavior and attach relevant designs or other resources that can help.

3. What did you already try to do?

This step is usually the one missing. This actually can help the asker think of new ways to solve the issue (“rubber duck debugging”).

This also will save time by avoiding solutions that were already tried.

Tip #5: Receiving Feedback

It is important to remember that you are not your code.

It might seem a bit silly, but it is an easy mistake to fall into. We put so much thought and even creativity into our code, that it is only natural to become “defensive”.

Don’t get me wrong, we should know how to justify our decisions, but we should remember that in the end, the code is just a tool, and making mistakes or having room for improvement does not mean that WE are a failure.

Actually, being open to feedback and criticism is one of the best ways to learn new things and get a fresh perspective. We should thank other developers (and people in general) who put the time in order to give extensive feedback on our work.

I think that reminding myself that the code is not me, and all feedback is an opportunity to evolve and learn, even if I do not 100% agree, helped me to remain open to changes and to grow faster.

Tip #6: Try it! You Will Never Be “Ready”

Looking back on the past decade, I can say that all the great things that happened to me, happened when I did something outside my comfort zone:

  • I got to be with my partner when I “chased” after a girl living 4500 km away
  • I started an exciting career when I quit my job and started coding
  • I faced my social anxiety when I had to approach new people after moving to the Netherlands.

All challenges are, by definition, things we are not ready for.

  • You don’t need to know everything to be qualified for a promotion.
  • You don’t have to “know yourself” before being in a relationship
  • You don’t need to be perfect before having kids

Seek Discomfort.

🔥 My Passion

I am passionate about helping people get into tech and I might be able to help with the next step of your career!

🔍 My Help

- You are looking for a new challenge
- If you want to build your own learning path
- You want to get more out of your current job
- You feel stuck or unfulfilled
- If you are looking for a promotion or a raise
- You look to improve your leadership/mentorship skills
- You want to improve on your project/time management skills
- You seek practical guidance for the interview process

🧙‍♂️ I am an advocate of:

- Growth mindset https://lnkd.in/e9-MGwrE
- Overcoming fear https://lnkd.in/egd8Pib3
- Taking risks https://lnkd.in/eysiGXhE

--

--

David L. Rajcher
David L. Rajcher

Written by David L. Rajcher

Ex-School principal, a developer and an instructor, experienced with leading both teams and projects and over a decade of teaching students.

No responses yet