I completely agree. I scored my dream job as my first true dev job mostly because of hard work, and because it was my dream job, with a whole lot of luck sprinkled in.
What I mean by that is I was passionate about the product itself (I work on the front end of a Auto Racing Video Game’s UI - I was a paying member of this service for years, so I knew the product better than most developers), so my passion was self-evident before I even submitted my resume.
I know me saying all this is probably depressing in a sense, because there were many things that worked in my favor that I had no right to be in my favor. These are things another person can’t rightfully reproduce. But those things alone didn’t land me the job. I’ll do my best to share what I’ve learned that I think did land me the job.
Master Something, Or Many Things.
Some topics I’d recommend you know like the back of your hand if you can:
- Make your own React boilerplate. Learn how to configure webpack, babel, and eslint, and prettier boilerplate. It will be invaluable to understand how your tools work.
- Make apps. Make them non-trivial. Do the freeCodeCamp apps here. For me, the game of life was something that impressed the guys I interviewed with (and I thought it was pretty basic to be honest). You never know which ones will stand out, so make them, and make them good! If they aren’t finished, or don’t represent you well, don’t share them on your portfolio yet. Sure, let them be public on your GitHub account, but don’t promote them as if it’s a finished product.
- Master Git. Seriously, if you master this one thing you’ll be set for life. It seems simple, and it is, but working with teams with it is on another level. This is why contributing to open source is so valuable. I’ve been in my dream job for 10 months now, and I still think I suck at it. You can be better than me, I know you can.
Don’t Try To Master Everything
I fell into this trap so many times it makes me want to cry. Everything is new, and exciting. I tried to learn how to code C++, C, PHP, Ruby, Ruby on Rails, Node.js, Wordpress theming, React, and Angular on my journey. Each time I tried to learn it I put my heart and soul into it for a week or two, then lost interest and failed.
This is why I said, don’t try to learn everything. Master the core things you value, and the market values, and go all in on it. Don’t advertise skills you’re not willing to invest in proceeding with.
You should be as confident speaking on 2 or 3 technologies as you are about your own best friends and family members. Nobody knows everything about everyone, and neither does everyone know everything about code. But there’s plenty of resources out there that expose what topics are worth knowing, and if you can be as familiar with those topics as you can be relative to your friends and family, you’ll be fine.
I waited 3 1/2 months for my dream job after I thought I was “ready”. The wait sucks. I wish I could make it easier for you. But I promise you, if you invest in yourself, it will pay off for you.
Sorry for the long essay, but I just got rolling and couldn’t stop.
Best of luck with everything!!