Now that I'm on the other side of the job search, I feel like I've gained at least a little clarity on what works and what doesn't work when looking for a job as a coding bootcamp grad.
I've been working as a software engineer for almost three months now, and knowing what the actual work looks like helps me better understand what I did well and what I could have done better during my job search and interview prep.
I'm not speaking here on behalf of Microsoft, and nothing I write here is company-specific. Instead, I'm simply connecting some dots from when I was looking for a job just 5 months ago to finally working in my new role.
Since COVID-19 has created such a tough environment for anyone to find their first engineering job, not to mention bootcamp grads, I'd love to offer some thoughts on how you might be able to gain an edge and increase your likelihood of getting a job.
These recommendations apply mostly to searching for jobs at big tech companies and not necessarily smaller companies or startups.
LinkedIn in crucial for your search, but looking like every other bootcamp grad won't do you any favors.
Try looking through your feed on LinkedIn. Can you spot the bootcamp grads?
Usually, all of our headlines look the same. Packed full of specific technologies in order to take advantage of keywords in order for recruiters to find us.
I did this too in the beginning of my job search. On paper it makes sense.
But what actually happens is that you are effectively branding yourself as a bootcamp grad, not an in-demand software engineer.
Now I need to say, I was a bootcamp grad too. There's nothing wrong with being a bootcamp grad. I wish there were more bootcamp grads!
BUT, bootcamp grads don't have the best reputation with recruiters and hiring managers when being evaluated for jobs. We can say this is sad or unfair or whatever, but unfortunately it's true.
So, what you really want is to remind people of competent, professional software engineers.
You want people to look at your profile and think "Oh, this looks like the candidate that the team hired a few months ago" or "This looks like that Google candidate that was super impressive last week."
If you look at the LinkedIn profiles of software engineers currently working at well-respected companies, their profiles are usually fairly sparse, concise and succinct.
Most often, their LinkedIn headline will simply say "Software Engineer at Google".
This conciseness signals confidence. They don't need to showcase all of technologies they know.
In fact, they realize that specific technologies, while important, take a distant backseat to creating real, measurable impact through their work and understanding the underlying engineering principles of those technologies.
You can still take advantage of keywords in your About, Experience and Skills section on LinkedIn, but my personal opinion is that your headline (which is the first thing people see when deciding whether to click on your profile) should remind people of other professional, competent engineers.
As a bootcamp grad, "Software Engineer", "Full-stack Software Developer" or "Frontend Software Engineer" are all good examples of this.
I would also avoid having things like "Looking for opportunities" in your headline.
When all people see about you is that you're "looking for opportunities", you're not really matching their heuristic for "experienced, professional software engineer", even though you very well may be one.
A lot of first-time job seekers use "looking for opportunities" in their headlines, while many experienced engineers instead focus on direct outreach or their network to communicate that they're looking.
You want to occupy the same mental space as the latter in HM and recruiters' minds.
I'll be honest, the projects on my resume were relatively basic.
I took them very seriously and worked hard to make them work and look good, but I wasn't impressing anyone at Microsoft with my genius.
However, it's important that I had them. Projects will be your technical experience when you interview.
This is another way to gain an edge and overcome the bootcamp stigma.
And that's fine! But it could be better. You will be evaluated against computer science grads.
Fortunately for them, their education will offset some of their lack of experience.
For you, you'll have to signal to recruiters and HMs that you have the same level of technical competency as a computer science grad as it relates to the job you're interviewing for, without the stamp of credibility of a traditional education.
Your projects are a great way to showcase that and have you stand out compared to the sea of simple crud apps they see on hundreds or thousands of resumes per position.
How do you do this? You do something technically hard.
If you have one technically difficult thing per project you can talk about, you're already far ahead of most candidates.
What's an example? If you're hoping to work at a big tech company like Google or Microsoft, one idea is to think of a way to incorporate advanced data structures or algorithms into your project to measurably improve performance.
For many roles at these companies, you will actually be using advanced data structures and algorithms on the job to efficiently handle data and ensure optimal performance at scale.
Maybe you use bitwise operations in an interesting way to speed something up in your project or use an advanced sorting algorithm to reduce time complexity for an important feature.
This particular example tells your interviewer a few things.
First, you have the same or higher grasp of data structures and algorithms than the typical computer science grad, which gives you credibility.
Second, you know how to think algorithmically and technically in order to optimize performance. In other words, you're technically competent and would add value to the team.
Third, it signals that you have a genuine interest in software engineering and aren't just doing the project your bootcamp made you do in order to get a job.
Basically, it makes you look legit.
The most important thing you can do to earn that first great job is to actually focus on becoming an excellent software engineer.
We've talked a lot about signaling competency, but at the end of the way it's most important to actually be competent as it relates to the position you're applying for.
Remember, you're being evaluated against candidates with CS degrees from Stanford. You're expected to know the same fundamental computer science knowledge that's relevant to the job.
As far as interviews go, this mostly relates to data structures and algorithms since most interviews focus on these types of problems to evaluate candidates.
But depending on the job, you might also be asked about bit operations, concurrency, specifics of memory allocation and low-level system topics like CPU caches, threads, and system calls.
It's up to you to fill in the relevant gaps after the bootcamp to get that job you're hoping for.
In most cases, going deep on data structures and algorithms will get you 80-90% of the way there.
I know from experience that there are many extremely smart and hard-working bootcamp grads that would do an amazing job at any of these big tech companies.
My hope is that by overcoming some of bias we face as bootcamp grads, you will have a much better shot at letting your skills shine through.
You are every bit as a capable of rocking these tech interviews and getting that job as a computer science grad, so I hope this is helpful in thinking of some ideas to get there faster.
I treat your info how I'd like mine to be treated—with complete privacy.