How To Get a Job in Web Development 101
Finding your first web development job, be it for programming or design, is one of the hardest things you'll ever have to do. Obviously there's no exact science to it, but here's some advice from someone who had to go through it - and learned a lot along the way.
About my experience and training
For an article like this I think it's fairly important I give some background, so: hello! I'm Leonardo, a front-end developer in Glasgow, Scotland. This is my third software development job since finishing uni.
I studied Digital Interaction Design, which included mostly design work and a little programming sprinkled in. Programming-wise I would say I'm mostly self-taught.
Do I need a computer science degree?
This is probably the question I see asked the most, and the answer depends on a few things: the extent of your self-taught experience, the company you're applying for, and the country you live in.
But I can tell you with 100% certainty that, at least in the UK, the answer for most people would be:
No, you do not need a computer science degree to get a job in web development.
I've been to dozens of interviews and have been called by even more recruiters. The times in which I was asked about my degree could be counted on one hand. Seriously, people don't tend to care.
I've even had some companies ask me for that information and then tell me they only asked out of curiosity.
So what are these recruiters looking for if not a degree?
What should you have to land your first web development job
I'll say it again: navigating how to get a job in web development is not an exact science. But the following things are all very helpful so take note.
1. Applicable knowledge
By applicable knowledge I mean clear proof of what you can do and how you have done it. Having this should be the top priority of any new developer seeking employment.
Applicable knowledge comes in many forms, the main two being:
- Projects you've developed on your own time (please, please have at least a couple of these to show off)
- Specific solutions to problems you've encountered while implementing a certain feature (take note of big, or small yet interesting, hurdles you've come across, and how you overcame them. You will be asked about this at interviews)
I've seen people try make up for not having actual applicable knowledge by preparing "the most likely interview questions for X". If that's what you're doing then let me stop you there. Knowing some textbook answer to a technical question is unlikely to get you hired.
If you explain a time you encountered a problem and how you ended up fixing it, it won't just make for a more interesting interview, but it's a far more effective way to show how much you value the learning process - and, ergo, how much you're worth.
2. Show your passion
This should go without saying but, if you're just starting off in the world of programming, being evidently passionate about the job will go a long way to show employers you're an investment worth making.
I know there's a lot of stigma around needing to be passionate to be a good developer. However, finding your first web development job is really hard especially if you're interested in working with web technologies.
Put yourself in the shoes of the person interviewing you. They've probably already seen a dozen or more people with very similar skills to yours.
Even if overt enthusiasm isn't normally your default, showing some will put you a step above the rest. But if you don't get the job, remember it's not because your passion wasn't enough. Just fire it up for the next interview, and the next.
While I've argued a lot with friends about how "passion" should not be used to define how hireable someone is, at the end of the day recruiters will absolutely take it into consideration, whether they admit it or not.
3. Learn to swallow your pride
While I'm sure most of you would love to get your first job at Amazon or Google or Facebook, that's not gonna happen right away. Your first job will not be your dream job, and that's okay.
Aim for something a little simpler, more boring even. As long as it's even vaguely related to where you're going, do it. Just keep an eye out for something better coming along. And it will, trust me.
By the time that slightly better job is available, you'll be much more likely to get it if you've been working in the meantime (even if that work has been on something you haven't necessarily liked).
My father actually gave some great advice on this front. Having interviewed a lot of people in many different industries, his philosophy now is:
The most important thing when looking for your first job is to get your foot in the door.
Once you land that first job in the field, every single job search after will be much easier. So that should be your main goal.
4. Check out smaller companies first
As previously mentioned, everyone wants to go work for a big famous company, but it might actually be more beneficial for your career to go the opposite way.
Jack Ma, founder of the Alibaba group, has a great quote on the matter:
'Before 30 years old, follow somebody. Go to a small company. Normally in a big company, it’s good to learn processing. You are part of a big machine. But when you go to a small company, you learn the passion. You learn the dreams. You learn how to do a lot of things at one time.'
Ma hits the nail on the head here. Big companies have plenty of pre-existing rules and their work is tightly optimized. This leaves very little room for personal exploration, while a small company can easily allow you to disrupt the status quo, encouraging you to try new things.
Let's be honest here. There are also a lot more small companies than there are tech giants, so there's just more to choose from.
5. Never stop learning & trying new things
This might not be the case for everyone, but I've heard from countless people that university just did not prepare them enough to find a job. This goes not just for tech, but most specialised industries.
The unfortunate reality of finding a development job today is that most companies you would want to work for are looking for someone that has a lot more skills than you'll know after university or at a beginner level.
This might sound unfair - and I would argue it probably is - but the bar for entry level positions has been raised over and over and that's just the field you're going to have to play on.
Learning in your free time
The only thing you can realistically do is to start coding in your free time to play catch up with the rest of the applicants. But most importantly, do not listen to senior developers' advice about keeping work and private life separate.
Senior developers who have had decades to train their skills and already have stable jobs will often advise you to not code in your free time. This might ring true to them, but its a death sentence for any beginner's career.
Do code in your free time and use that time to learn as much as possible. Having a backlog of interesting personal projects will give you an incredible advantage over any other applicants and will most likely help you land your first role.
Your time to shine will come, so don't give up
From friends' anecdotes, my personal experience, and communities online, the consensus seems to be that it'll likely take anywhere between 6 months and a year to find your first developer role. During that time you will most definitely lose hope, but that's exactly when you should persevere and push through.
Ultimately, trying harder is never something you'll regret.
Once your foot is in the door, finding further jobs is never going to be as hard as finding your first was. And it's likely that within a year of working you'll start receiving more interesting offers from recruiters.
I tried to keep this article fairly short, so if you have any questions about how to get a job in web development that I haven't covered, email me or leave a comment :)