5 ways to get 'developer experience' when you have none
Dragos Nedelcu
Aerospace Engineer turned Software Developer | I help JavaScript Devs get to Senior by Mastering the "Fundamentals." - See my profile to begin????
Did it happen again?
You've already applied to a few jobs. You re-wrote your cv, told all your friends you are looking for a developer job. You even got far with a few companies and passed the technical challenge.
But, you did not get the job.
They were looking for someone with a bit more “industry experience. They loved your passion for coding, your determination, and your story. Yet, they decided for a more experienced candidate.
Here you are again.
Frustrated and afraid. Afraid you've put hours into hooping your coding skills for nothing. Countless tutorials, Bootcamp assignments, and mini-projects.
And the worst of it?
You want to quit.
Maybe it is the pandemic. Maybe you should wait a bit. Maybe you want to sign up for yet another Bootcamp. Maybe you want to do something more in the "middle" because web-services and databases look way too complicated. Maybe.
The bad news?
You can’t really quit. You’ve come too far. You made new friends, you learned new skills and you bought a new laptop. You are hanging around at meetups and checking the latest JavaScript library every morning at coffee time.
The good news?
It is easier than you think.
To impress a hiring manager, you need to get out of "tutorial land".
You need to show that you've already worked in a developer team and shipped a piece of software. So pull yourself together for now and follow the tips below to get the developer experience that will land you a first job.
1. Build things to fix your world
Look around, do you like what you see?
Probably not.
It is 2020 and the word status is: f**ed up. From Environment to Equality, to Education to Human Rights, there are countless challenges where a developer can help. Pick one you care about and try to solve it with a piece of code.
You are the CTO now.
Put together a few requirements. Build it. Ship it. Deploy it somewhere where others can see it. Ask your friends and family for feedback, iterate, and improve. Add a beautiful README and put it on your Github.
That’s what software is all about.
It is not about web pages. It is not compilers, components, and containers. It is not about platforms and services.
It is solving real-world problems with pieces of code. Boiling knowledge into executable instructions that a machine can follow and execute upon.
Pro tip: think big start small. Focus on one feature. You are a beginner and doing this solo. Whatever you do, the wider the scope, the higher the possibility of not shipping. Focus on the most important feature, nothing else.
2. The Hackathon way
Hackathons are more than ‘little challenges’.
More than a developer’s wet dream, more than free food and prize money. They are your gateway to new connections, new industries, and a simulation of how developing software really feels like.
Afraid of deadlines?
Well, you got 48 hours my coding friend and hanging around the coffee machine or getting that routing in place doesn't really count. Socializing and fixing boilerplate code doesn't win competitions.
Are you afraid?
You should be. Will you even find teammates? Will your MVP break on the stage? Will you be able to finish the core features you agreed on? Is the “hack” sexy enough to get the attention of the jury? Will potential investors care?
A hackathon is like pressing the pedal on a developer job.
Everything you would do in months you have now to do in days. I still join hackathons from time to time. Final pitches still tick my nerves.
Pro tip: always work on a team. If you are doing the Hackathon in solo mode, or if you only team up with developers having a similar level of experience you miss a huge learning opportunity.
3. Work for free*
Dragos, are you freaking kidding me?
Yes, you read it well. I don’t want you to starve. I do want you to stretch. Make sure you have enough money for ramen and the leetcode subscription. All extra time should be dedicated to one thing and one thing only: coding. And I said coding, reading about it doesn't count.
Do you know a friend that needs help with their website?
Help her out. In the beginning, don't charge anything. You will solve real problems, gain web development experience, and get recommended. Ask them for a referral, ask them if they know someone that could benefit from your skills.
A non-paying customer is still a customer.
Pro-tip: *pro bono means experience, visibility, and recommendations. Make a habit of asking everyone you work with for a short recommendation and a referral. Do it proactively and in a matter of months, you will already have a considerable network that trusts you and your development skills.
4. Early-stage startups looking for an early-stage developer
Risky as ****k?
Yes, but so it is hiring you.
Early-stage startups are your best friend. They hire anyone that will be able to help them.
In many cases, they have grant money or seed investors. They might even pay you a modest salary. You will find them usually around universities or at pitching competitions.
They are always looking for techies.
If they already have a CTO, that person probably needs some help. If the project goes well, you will get hired. If not, startup co-founders usually have tons of connections. They will help you find the next opportunity.
Pro-tip: try to stick around more than a couple of months but time box your dedication. If the project do-sent take off within your timeline, explore options, and be honest with your co-founders. They will appreciate it.
5. Open source without coding
Wait, what?
Terrifying I know. By now you probably have inspected the source code of your most beloved libraries. And it probably took you a few seconds to close the browser tab because it felt like JavaScript but more like Mandarin. I mean you barely get your own app to compile.
You are no Linus Torvalds, yet you don’t need to be one.
What does “contributing” mean to you?
To me is about making thighs happen. Is a lot about developing, yes, but also about documenting, reporting, managing issues, and being available. And that my aspiring developer friend, that I bet you can do.
The catch here is you can get involved by doing parallel tasks. With time you might even get the chance to pair program with some of those ‘senior’ contributors. And why not, you might also get the attention of companies building on top of that open source project.
Pro-tip: search companies that rely heavily on open source code in their products. They are usually small SAAS companies that were founded basically on top of that specific technology. They want to scale it, get it too big markets, and hire some great engineers on the way. Make sure you chat them up after stalking their GitHub account.
Are you still with me?
To be honest, this is no guarantee of success.
You will still get rejected.
You will still procrastinate and get distracted sometimes.
You will still want to quit at some point.
And you will go back to coding.
So, don't just read another article and go about your day.
I challenge you to take action.
I challenge you to pick one tip and implement it. And I challenge you to do it now.
The good news is getting “developer experience” is totally doable. Use this to guide your efforts.
You will pass that interview.
And you will get that job.
But, for now, go back to your code editor.
You have work to do.
Infineon NFC Nerd | Transforming Smart Homes with Cutting-Edge NFC Tech | Afraid that your smart lock will run out of battery again, the answer begins with NFC energy harvesting
4 年Thank you for the insightful article!