As a junior developer, many things are going through our mind. Thinking about another job where pay is more, thinking where our class fellows end up, which movie to watch this weekend and etc. But the ultimate challenge is ‘We want to prove to our boss and colleagues‘.
If you look at your past three months you will find that most of your efforts were about creating your rapport. Senior developers face this challenge too but they have already fought their battles and rapport is not number one in their plate.
Why juniors have to prove themselves? Because the hiring process is designed like that. At every stage of the hiring process, the developer has to prove his worth. Most importantly this does not stop at the end of the probation.
So, what you can do to prove yourself without making your life harder? Let me outline a simple process to prove yourself. It is divided into three stages.
Stage 1
In the first stage learn everything that is there to learn in your working environment. Learn every tool/framework your team is using. Learn about the building process, deployment process, issue tracking process and as much as about your organization.
While doing so, don’t nudge other developers frequently. Ask only when you are unable to do it yourself.
You will be given small tasks to prove yourself. Do these insulting small tasks with due diligence. Prove yourself in these small combats until you are the commander.
Stage 2
Learn transferable skills. Transferable skills are those skills that can be used across different fields. Examples are problem-solving, researching, and writing. Specific examples for programming are algorithm design, object-oriented analysis and design, and process management like SCRUM or XP.
This is possible that the technologies or skills that you learn in the first stage will be non-existent after 5 years. Whereas transferable skills will be with you for a lifetime.
The outcome of this stage will make you valuable across every other organization in the world. On the other hand, the outcome of the first stage will make you valuable in limited settings like your current organization or a very similar one.
Stage 3
The third stage is highly advanced and it will make you a developer that people will pay anything to have you. This stage is about defining your values and principles.
For example, everybody in my office knows that I am strictly against sharing my personal time with office time. Therefore, I end up with the team that shares the same principles and is the most productive team.
If you don’t define your principles others will define them. You will be dependent on others. You become a submissive employee who said ‘Yes’ to every wish of your employer.
At What Stage You Should Be?
You cannot say in the first week of the job: “Here are my rules and I only work by my rules”.
When you begin the most important thing is to learn about the environment and technology. After 3-6 month you should focus on transferable skills. After 3-5 years you are eligible to define your own principles and create your life around that.
Roadblocks and Challenges
Nothing in life is linear beside watching Netflix. There will be roadblocks along the way. Now I will tackle the roadblocks that a beginner developer will face.
Programming is Hard
If you consider programming hard when you were in college or a boot camp then here is a surprise for you. Real-life programming is even harder.
Also, if programming was easy for you during studies than brace yourself. Professional programming is going to test you. The scale at which you were working previously was small and pretty much predicted. Now you will have to deal with uncertainties and challenges of continuous change.
So, keep this in mind that it will be hard for you but as time progresses you are bound to become good in programming. All you have to do is stick to programming.
Learning
This is a good roadblock. Programming is not like other careers. In some careers, if you stick to rules you will be fine. In programming, the most challenging rule is: “Learn new rules of technology”.
‘Keep learning’ is a distinct feature of our field. The pace of upcoming technologies is so fast that a lot of things have changed in the last decade.
Why learning is hard?
The learning process is ‘Hard and slow’. I like hard but I don’t like slow. When learning, I know I will be slow and if I push myself I would create apps that an amateur developer cannot look without laughing.
Pain while learning is so much that in the whole process of learning we only remember the pain. We don’t remember the joy of accomplishments afterward.
Overwhelm vs Focus
The second reason that I resist learning is because of the overwhelming amount of technologies that are there to learn and my wish to learn them all.
But I could not because learning takes time and I will have to ‘choose’(Yes the ‘Decision Fatigue’ is real according to Mark Zuckerberg and Steve Jobs)
Once I wanted to learn about everything there is to learn about MVC from Microsoft, Java, Node and couple of other frameworks. But it’s not logical and I end up being learning MVC from Microsoft which fits the larger goal of mine.
3. Your Seniors
Dealing with senior developers is a challenging part for junior developers. There is a very fine line between getting help from them and offending them.
If you want to see how an offended developer looks like then visit StackOverflow and ask any basic question on the forum.
Many senior developers think that nowadays juniors don’t work hard or they don’t have enough training to do the job. Seniors developers forgot that they were junior too not a very long time ago and they did ask basic questions.
4. Fake Feeling of Incompetence.
Also known as impostor syndrome. Very common in junior developers. Also common in college students. You can deduct (as I have) impostor syndrome is common people who are learning.
Secondly, this is common in people who are doing a great job like Neil Gaiman and Neil Armstrong.
You are doing both. You are learning and doing a great job.
Knowing that you are feeling is impostor syndrome is a difficult thing. It is not like that one day you wake up and said: “Hmmm.. Yesterday I was feeling imposturous. ” This syndrome has many variations and forms that are difficult to identify.
If I write in my diary about my impostor syndrome that would be: “I am working hard for the last 2 years and when I look back there is not enough work done by me. Just routine tasks that add up to nothing. Now, I believe I am just a supporting role and not very important to the team”.
I still think that I am impostor even if I have been the best developer as told to me by seniors and management ‘offically’. But still, I don’t believe it. That’s impostor syndrome for me.
The most effective solution to fight this syndrome is recognizing that it exists. When you ‘Label’ your emotion than more than 80 percent negative effect of that emotion is gone.
5. You are the Roadblock
I knew a junior developer who was not taking breaks(like break tea, coffee, lunch). In the first year, he kept his head down and worked hard to prove himself.
He reminds me of myself too. Keeping track of every second of the day and anxious when I was assigned tasks. For the most part, this is good but not the optimal method to prove yourself.
Do you wanna know what did I lose with this attitude? I lose direction. What did I get? Burnout.
When you are busy doing the next task in your plate you forgot what you are missing in the long run. Most of the work that I did on the early days did not make any significant improvement in the bigger goals of my life.
Secondly, keeping hard on your yourself will burn you out. Before starting our programming career, we are mostly students in a university or a boot camp. Life was hard there.
When you join industry this struggles continues and if you don’t give yourself a break this accumulated stress will burn you out. I have seen victims of burnout. They now falsely believe that programming career is not for them.
More On Proving Yourself
If you like this post then subscribe to learn more about how to prove yourself. You will also get my step-by-step guide to creating your personal tool for fighting impostor syndrome.
Also, this guide will help you to:
- Document your progress
- Make better software task estimation
- Keep motivated
- Authentic self-appraisal
[maxbutton id=”2″ url=”http://eepurl.com/b34ZpL” ]