How I secured my first Software Engineer job in 4 weeks
… after graduating from a bootcamp, with no CS degree and during the worst economic contraction on record within the UK.
2020 in many ways, hasn’t lived up to my expectations and I’m sure it’s probably true for you too. Here in the UK alone, we’ve seen the economy shrink more than ever recorded in historyand a 48.9% drop in job opportunitiescompared to the same time last year.
When I originally chose to make a career change in late December 2019, I wasn’t expecting to face such tough market conditions in the pursuit for my first job as a Junior Developer.
Since graduating from the bootcamp, I’ve had a lot of people approach me asking how I approached the job search and whether I could provide any advice. I’ve shared the same information with other students from my bootcamp cohort who have reported good results and now I’m sharing it here with you in the hope that it helps you to find your next role.
Firstly, just a bit about me and why what I have to say might be of use to you. I’ve been a Technical Recruiter for the past 5 years here in the UK. For those of you reading this from across the pond, or with no prior knowledge of the UK recruitment market, and wondering how that is dissimilar to an internal recruiter at say, Google, then let me explain.
Unlike an internal recruiter, I worked with not just one but a large number of organisations from early seed to FTSE100 and helped them to find professionals with a technology background to join their business. That also included the business development, acquisition, and later retention of these relationships.
It’s this last part, that’s particularly relevant to what I’m going share with you because how I approached business development as a Technical Recruiter is not too dissimilar to how I approached job searching as a Software Engineer.
You might be wondering, well if “he worked as a Recruiter for 5 years, then it’s no wonder he managed to find a job in 4 weeks” but I worked specifically around Data and with companies based in London, not Bristol. None of the companies I approached were prior clients.
This is important and something that I would regularly see professionals fail to do in my time working as a Recruiter. Keep a log of what you have applied to; not only for your own reference but because it serves as a great list to follow up on at the end of a week and can become quite a useful tool for you to analyse how your job search is going.
I’ve included a basic spreadsheet that I used as part of my job search that is a bit rough and ready but served as a great tool to enable me to keep track of everything. It includes things like:
- job description URL
- technology stack
- hiring manager
- interview dates
Download it here. Feel free to amend it and use it how you see fit.
Know Your USP
How are you different?
You’ll re-use the answer to these questions time and time again, while networking, connecting on LinkedIn and during your interview. It’s your elevator pitch. It doesn’t need to be an essay it can be literally 30 seconds but you need to have this nailed and you need to be able to tailor this to your audience on demand.
Let me give you an example. I have an unorthodox journey to becoming a Software Engineer. I graduated from university with a Law degree, did a year and a half as a Paralegal within Financial Services, then 5 years in sales as a Technical Recruiter, then did a web development bootcamp which included React and Laravel among other things.
However, whenever I applied to something I would think of a way of making some part of that journey relevant to the person I was speaking to at the time. E.g. if it was a startup digital agency that built e-commerce web solutions for clients using React and X technology, I would highlight how my experience working with lots of clients including startups was transferable to a digital agency, that my React experience would enable me to hit the ground running and that I had previously set up an e-commerce “side hustle” in my free time.
Find your USP. It will help you to stand out.
Level Up Your Digital Footprint
By “digital footprint”, I’m also talking about your resume here. It’s all digital these days, right?
A lot of this may sound fairly obvious but as a Recruiter, I’ve noticed in the past how many people do not do this particularly well. You should have at a bare minimum the following:
- a portfolio page
- a LinkedIn profile
- a GitHub or equivalent profile
- a resume
You could also consider investing time into:
- a blog
- a Twitter presence
- open-source contributions
When I went through this process, I did everything. I started building my Twitter account, a blog, and an open-source project during the bootcamp so that I could leverage all of it but didn’t overwhelm myself when the time came to start looking for jobs.
How to write effective content for a blog, how to grow your Twitter following, and how to create your first open-source contribution are all large enough topics for their own articles, so I won’t cover them here.
It’s A Full-Time Job
Finding a job is a full-time job in its own right, that’s probably never been more true than now in this current climate. Make sure you plan each day or week and set yourself goals for what you want to achieve in terms of output during that time. This is where the spreadsheet included above will help and enable you to stay accountable to yourself about your own productivity.
Some things that worked for me included getting myself into a routine as if I was going to work, streamlining repetitive tasks as much as possible and setting up a workflow that automated a lot of the “searching” part of job searching.
Curating a list of sources and using alerts, e.g. job boards, LinkedIn, platforms like HackerRank were great ways to set up automated job notifications so I could focus on chasing up applications, liaising with recruiters and preparing for interviews.
Constantly Build Your Portfolio
As a Junior Developer or someone with zero commercial experience, your portfolio will be one of the single most important things you show to a prospective employer.
If you have just finished at a bootcamp, as I had, then you’ll no doubt have graduated with a portfolio of work but so will everyone else.
Continue to build on your portfolio and each time you build a new project, challenge yourself further than the last time. This is where you could even blog about the new challenging project you are building, tweet about it, post it on LinkedIn, connect with other like-minded developers, and gain some additional support and a wider professional network.
Building independently demonstrates multiple things to prospective employers:
- you can learn on your own;
- you’re passionate about what you are doing;
- you can problem solve technical challenges independently;
I’m convinced the open-source project I started during the bootcamp and later finished immediately after graduating was pivotal to me securing a job in this economic climate. It wasn’t wildly unique and I never even fully completed it but it was a focal point during all my interviews.
Apply, Apply, Apply…
This is incredibly important. There are two points to make here; (1) as a former Recruiter, I can tell you that there is a significant shortage of Software Developers, at least in the UK. Demand far outweighs supply. This is good for you but only if you leverage it.
There have been too many times to remember where I have previously worked with an organisation and they have considered someone who applied for a role but was less experienced than the job description originally specified. The job I eventually was offered was for a Software Engineer position.
I originally applied for a Senior Software Engineer role, knowing that there was absolutely no way I would be able to secure a Senior role but hoping that they may be open to considering someone more junior.
Too many people I speak to are reluctant to apply to jobs that they feel they don’t completely match. Don’t fall into that trap, just apply.
Secondly, (2) it’s people who are reviewing your resume and deciding whether to progress you to interview or offer you the job. People in my experience are inherently subjective. I’ve seen hiring managers discard a person’s resume in a matter of seconds because of a typo but seen the very same candidates secure an almost identical role with a similar company using the same resume.
Apply, to a lot of places. Having multiple options and multiple conversations happening is not only motivational during the process but it puts you in a better position to negotiate salary and package when you eventually do receive an offer.
In a pre-pandemic world, this point would be a lot easier to achieve but social distancing makes meeting people particularly difficult at the moment.
The good news is that many development communities appear to have rapidly adapted to the new norm and you can find a lot of meetups are now available remotely.
A great to start is https://www.meetup.com/. Find a local meetup that’s relevant to you and start to engage with the local community, make some connections and network. You never know, your next interview or job offer may come from someone you met at a meetup.
Twitter and LinkedIn are great tools for this and you can start with absolutely no following and still make it work for you. I had, and still currently have less than 300 followers on Twitter at the time of writing, but managed to receive a job interview at a FTSE100 company simply by engaging with other Developers on there. You can too, you just have to start.
If you’ve made it this far, then thanks for reading!
This last point is probably the single most important piece of information I can share with you. A common challenge you’ll find is that determining if your resume and technical experience is up to par is quite commonly left to someone with little to no technical experience.
Removing the middleman from the equation brings a lot of benefits. I used the same technique as a Recruiter to develop relationships with new clients and I used it again as a job seeker looking for my first Developer role.
Here’s the process I would follow after submitting an application for every job role:
- identify the hiring manager online using Twitter or LinkedIn
- follow or send a connection request immediately
- send them a DM or message expressing my interest in the role
- follow up in a few days
This might seem rather eager but using this process helped me to increase my response rate in the second week of searching to over 60% compared to the ~5% response I was receiving in the first week. I’ve included an example LinkedIn message below that resulted in an interview:
I’ve applied on …. for a senior role to send my CV across to you but I’m actually speculatively applying for a Developer role in the team. I’ve graduated from a bootcamp and have been working on full stack applications using PHP and React.
I’m keen to discuss further if of interest.”
The benefits I noticed using this approach included things like:
- significantly faster response (sometimes the same morning)
- direct dialogue with decision makes which helped me influence things more
- ability to ask for constructive feedback when rejected
- increased response rate
- increased interview percentage
I hope the information above was helpful to you and helps you to find your next role. If this does help you, then it would be great to hear about it so send me a message on Twitter (@danielpnorris) or leave a comment below.
Hey, interesting article! Welcome to Hashnode. Please tag this post with "General Programming" for better reach. :)
Great Article!! And Congratulations on getting your first job. I'll be soon starting my job hunt in Canada and I'm certainly planning to use your resources for the same. So, a HUGE thank you for that!!
I've connected with you on twitter as well :-)
Looking forward to your blog articles.
First off congratulations on getting your first developer job. Also, thanks for writing this article. I've learned something from it, and I hope to get my first developer job soon too.