Caveats
The first thing I want to address is that this post is based on my personal experience and opinion. I don't want this to be another job search post where I guarantee you'll get a job if you follow these steps. I also want to address the privilege I have. This is not my first job search. I have 1 year of experience working in a contract position for Microsoft. I have a bit of savings so I don't have to find another position immediately. And I don't have any responsibilities to children or a partner. This has allowed me to give more time to my job search than most. Please take everything I say with a grain of salt but I hope you can utilize some of my experience.
First steps
Job searching is a marathon and not a sprint. With my contract ending in September and the year winding down I figured the job market would be a little slow (Side note: It wasn't for me). I didn't want to burn out immediately. I was able to take a week off after my contract to destress and prepare for the job search. Once again this is a huge privilege. During the week off I thought about how I wanted to approach job searching and I created a plan.
It can be overwhelming to come up with a plan. There are so many things to do and sometimes it can feel like an uphill battle. You need to apply for jobs, study for interviews, update projects and code to keep skills fresh, or learn new things.
I decided it was better to apply to fewer positions that I was more interested in. And I'd like to think that came across in my interviews.
The first thing I did was post a tweet saying I was looking for a new job. I was able to get some responses from companies and connect with other job searchers. After posting a looking for work tweet I changed my LinkedIn status to "#OpenToWork". This helps me better connect with recruiters. I also updated my LinkedIn tagline to say Frontend Developer (React/TypeScript). I've heard including some technology keywords in your tagline helps when recruiters are searching.
Learn in public
One of the things I decided I was going to do this job search was to learn in public. Learning in public can help me market myself and get my name out there. It can show companies that I have technical skills and how I approach problems.
I decided to learn in public more after I saw this tweet by Joel Hooks. Learning in public can be a bit scary but I think there are so many benefits. If you want to know more about building in public and the benefits check out Swyz's book "The Coding Career Handbook", which features a free chapter on Learn in Public.
If you're searching for your first job it can be hard to get your foot in the door. One way is to build things and gain experience. You have to make yourself as a candidate a little less risky.
A developer portfolio is a great project to build. As you create your portfolio you can tweet and blog about your experience, blunders, and wins. By blogging about your work helps you get better at communicating technical subjects and teaching through writing is a great way to cement what you're learning.
Interviewing
You've probably heard this before but I think the mindset that "interviewing is a two-way street" really helped me during this job search. I kept putting a lot of pressure on myself, saying "I need to get a job". And it has to be this job. I don't know about you, but I'm not good under pressure. I shouldn't be piling this pressure onto myself. I was more concerned about getting a job than I was about finding the right place for me. I'm interviewing these companies to see if they can support me and are the right fit.
One thing that helped me the second time around was creating a Notion document with all the companies I was interviewing with. My memory isn't great, so I like to use the doc to write down the questions I prepared before the interview, what we talked about, and my general feeling after the interview. This helps me compare companies and I'd use this information to format my next questions.
This might be obvious, but please prepare questions before your interviews and research your interviewers. Here's a list of my favorite interview questions to ask, but create some that are tailored to you. Researching my interviewers also affected the interview questions asked.
If someone was new to the company I liked to ask them about onboarding. But if someone has been in the company for a bit I like to ask them about what makes them stay at X company.
I like to put the questions I asked in my Notion document so I don't repeat questions unless I want to. That way I can make sure I have a full understanding of the role, the company environment, and how the company will support me.
I'm gonna be honest. I really hate algorithms. Even though I'm not great at algorithms I decided not to spend my free time on them. I want to note that I only applied for frontend/UI positions. This hurt me, but I was willing to make the sacrifice. A lot of my interviews asked algorithm questions but they also asked me to pair-program with React. I like these questions since they play more to my strengths and I feel they match what I would typically do on a day-to-day basis.
Learn from every interview
Job searching the second time around definitely feels better but I still failed my fair share of interviews. Everyone fails interviews and gets ghosted so I think it's important not to take it personally. After every interview, I try and think about what went well and what didn't. That way I can improve for the next time. I like to take the mentality of failing forward. I use every failure to make sure the next interview is just a little bit better. I try not to make the same mistakes and use each interview experience to improve.
This also doesn't have to be advice for just technical interviews. You can improve your behavioral interviews through experience and getting more comfortable talking about yourself and your strengths.
Resources
- How to be more successful on your next web developer job hunt by Kyle Shevlin