This is the 2nd post in my Junior Developer Diaries blog series. I’m writing more every week, and you can sign up to hear more and read previous posts on my website.
We know as good software engineers that learning, and continuously upskilling is important to our careers. In fact, it’s important to any career.
But what the hell do we focus on? There’s a seemingly infinite amount of directions and paths to explore and content to learn. Right now I can name at least several things I want to learn more about: Elm, React Native, Rust, Nodebots, C# Core, Android, Futher Swift, Elixir, Go, Queues, Docker, AWS Cloud Formation, AWS EC2, Ruby Gems, …. the list goes on! What do I spend my spare time learning?!?
I’m feeling rather overwhelmed by it. I feel almost paralyzed by the choices in front of me.
There are so many questions plaguing me. Do I focus on what will help with my day job? How about stuff for future jobs? How about stuff that’s trendy? How do I decipher between what is a trend and what is here to stay? How do I know if I don’t like something vs I am too unmotivated to learn it properly (cough pure functional programming cough)? How do I get feedback on what I’m learning? How do I find out what I don’t know?
This isn’t a blog for answers – but here’s my current thinking and I’d love to know if I’m on the right track.
Do What You Love
By doing just what you’re interested in doing, you’ll keep doing it in the future. If you take the chance to learn to code iOS apps because you really like iOS apps, then, hey, you might land a job doing it, and you’ll be doing what you love and getting paid for it. *There’s no point learning JS if you don’t “see” yourself being a frontend Guru. If, for example, you’re put off by the weaknesses of the language and having to worry about browser versions, then don’t bother. There are people who love that stuff, let them do it. But how do you know what *you** love?
Give Everything Five Hours
I try to spend at least 5 hours on everything that grabs me. I usually give most of this time to YouTube videos of conference talks of people explaining it. I usually watch a README type talk, followed by some advanced stuff followed by some case studies/lessons learned. This is usually enough. I then seek out the community, read some pull requests, and see what the mood is. Tools are important. Behaviour is important. If you like it, keep going! Get engaged. Attend meetups, read posts, document what you’re doing and keep learning! If it’s not for you, then move onto the next thing.
Remember 5 hours is less than one hour a day*. You could explore 52 topics in year. Actually that’s a cool idea for next year.
Get in the Habit
Like everything in life, a bit of pragmatism goes a long way. Follow what interests you, keep reading, but don’t spend all day on Hacker News. Try build a habit to make time for learning. Attend meetups. Read posts. Watch talks. Go to conferences. Subscribe to newsletters. Etc. Make upskilling a part of your life and embrace it.
This part of your career when you’re first starting out is overwhelming. I’m overwhelmed. But I’m still going. And so should you.
This was the 2nd post in my Junior Developer Diaries blog series. I’m writing more every week, and you can sign up to hear more and read previous posts on my website.
*I totally acknowledge that sort of time isn’t available for everyone, and that’s the privilege of my age speaking, but don’t give up, any time you can spend is better than none.
Top comments (3)
It's kind of a curse. Regardless of what you choose to work on somebody will be talking about something else, making you feel as though you've chosen wrong.
I agree though, just pick something you like and do it. Since it'll all be obsolete anyway it really doesn't matter what you pick. :)
I strongly relate to this article. It is honestly the main thing that is on my mind right now. I decided to keep learning about things that I do on my day job ( so React, MongoDB, Nodejs ...) for now. My career is only starting so I would like to have a deeper knowledge of a particular subject before trying to learn something different. Being a specialist might improve my marketability a bit compared to scratching the surface of dozens of different things.
So, I'll hold on to machine learning and Elm and all those wonderful things for the moment. I managed to catch up on web dev, I'll catch up on machine learning when the time comes.
Oh yes.