The very first time I was asked to pick up a coding task as a new junior developer in my first-ever job as a programmer, was one of the scariest moments of my life.
Immediately I felt panicked and unprepared. Not to mention the task was to write some unit tests for uncovered code, which I had very little experience with. In fact just 6 weeks before that I didn’t even know what a unit test was!
Despite my fears, I knew deep down if I was ever going to succeed and grow as a developer I would have to find and use some techniques to cope with my insecurities and push through.
I survived that first task and you can conquer anything you put your mind to too.
Here are some tips I found useful for surviving and overcoming self-doubt as a new programmer:
The first step is acknowledgement. It is absolutely normal and common for new programmers to feel overwhelmed and have self-doubts.
So when fear comes in, acknowledge it. Then once you’ve made that connection, accept that this is how I feel right now but this isn’t going to stop me in my tracks.
It could be useful to take a deep breath whilst you make this acknowledgement, which will help you to calm down. The feelings may not disappear, but as long as you can maintain a positive outlook, you will learn to continue on regardless of them being there or not.
If all you’ve done today is turn on your computer, open up your IDE and write one line of code - that’s a win!
Being a developer isn’t easy, and learning to code can take you on an emotional rollercoaster of not feeling ‘good enough’.
Therefore, it’s important to celebrate any and all of your progress and milestones. Now I’m not saying you need to throw a party every time you fix a bug (although you could do if you wanted to!).
But giving yourself a pat on the back or a small treat for finishing a tricky task or learning something new, will help you to stay motivated and develop a growth mindset.
Don't let the pursuit of perfection hold you back. Remember it’s better to get it working than to write the perfect code. Besides what does ‘perfect’ code look like anyways?
Instead, focus on the learning process and the progress you make along the way. You can’t skip the step of being a newbie, so you might as well embrace the challenge of coding and understand that it's a lifelong journey of learning and growth.
Failure is a natural part of the learning process.
Think about when you were little and were learning to ride a bike, what happened when you fell off? You got back on right?
Well, the same can be applied here. When you encounter a challenge or make a mistake, try to reframe it as an opportunity to learn and grow. If something’s too difficult, ask for help. If you want to know what went wrong, analyse your approach, and then use that info to find new solutions to overcome the obstacle.
Whatever goes wrong, there’s always an opportunity to gain something from it.
One of the things that helped me massively when I encountered that first task, was the support I got from my team and line manager at the time. Their patience and advice really helped me to feel confident enough to get started even though I felt like I didn’t know what I was doing.
Having a support network of other programmers can help you to feel less isolated and more confident in your abilities.
However, this doesn’t have to be through your job. If you’re yet to land your first role as a dev but you want to talk to experienced developers, you can connect with others through online communities, local meetups, or even coding boot camps.
This last tip is a favourite of mine, and probably the one that has helped me the most. Not only as a developer but in general as part of my everyday life.
The feelings of insecurity and self-doubt start in the mind and only after can this start to affect the body e.g. sweating, shaking, heart-racing etc. Therefore, if you can train your mind to minimise and cope with these feelings you can reduce the impact they can have on you.
By incorporating mindfulness practices into your routine, you can reduce stress and anxiety. I personally do this by meditating for just 10 minutes every morning when I wake up. This sets me up for the day and mentally prepares me for whatever challenges may come my way.
Whether it's meditation, exercise, or spending time with loved ones, make sure to take the time to do activities that bring you joy and help you recharge.
The key is to prioritise self-care to maintain a healthy work(or learning)-life balance.
Learning to code as a new programmer can be a challenging but rewarding experience.
The key to surviving and overcoming self-doubt will be how you deal with your emotions and how you move forward despite how you feel.
Coding is a lifelong journey, and with dedication and perseverance, you can achieve your goals and succeed. So, embrace the challenge and your fears, stay focused on your goals, and keep pushing forward!
- Acknowledge and accept your doubts and fears 😰
- Celebrate your progress and achievements, no matter how small 🎉
- Focus on learning and improving, rather than perfection 🎓
- Embrace failure as an opportunity to learn and grow 🎋
- Surround yourself with a supportive community of other experienced programmers 👥
- Maintain a positive and growth-oriented mindset by practising mindfulness and self-care 🧘
Keep on surviving and thriving!
From your fellow ever-growing dev,
💙 If you liked this article...
I publish a weekly newsletter to a community of ever-growing developers, seeking to improve programming skills, increase productivity and share knowledge within the exciting sectors of Tech, AI and Web3.
Get more articles like this straight to your inbox.
And stay in touch on 🐦 @evergrowingdev