“Opportunities to find our deeper powers come when life seems most challenging.” -Joseph Campbell
I was recently laid off for the first time in my life. I realized this meant there was something bigger and more exciting out there for me. So I went to find it.
After 30 recruiter calls, 12 phone technical interviews, 11 hiring manager calls, 1 take home project, and 7 onsite interviews, I accepted an amazing opportunity.
I went from being a Software Engineer to a Software Engineer II.
Having one year of software development experience helped me land interviews more easily, but I still had to put in a ton of work. I’ve never been great with these technical interviews, but I found what worked for me. If I was able to do well in them, anyone else can too.
I’m sitting here feeling extremely grateful during this world pandemic where millions of people have lost their jobs. I want to help by sharing all of the resources and strategies I used to land so many interviews in a short amount of time while being laid off.
Getting The News — “It’s Not You, It’s Me”
“Success is not final. Failure is not fatal. It is the courage to continue that counts.” — Winston S. Churchill
I was over the moon because I had recently celebrated my first year as a software engineer. I didn’t see this coming.
That Monday morning, half of the company got asked to go into a conference room. I was in that conference room. I was one of the many caring, talented, and hard working individuals that had just been laid off in order to keep the company going.
Working at a small startup, I knew this day could come. I had worked extremely hard and accomplished so much at this company. I loved working there every single day and for that I am extremely grateful. But it was time for me to move on and do well with another amazing team.
I knew that this one year of experience would be invaluable. That I could use it to feel more confident and land a new opportunity quickly.
I got home, took a nap, ran, and then went to sleep. The next morning I wrote down my positives and negatives about the layoff:
- Not having to hide that I was interviewing
- Having extra time to study and prepare for interviews
- Taking a break from my 4 hour daily commute
- A bigger and better opportunity coming soon
- Having more time to work on my health
- Having more time with my dog
- Uncertainty, fear, and unknowing of the future
- Minimal income coming in
The positives outweighed the negatives so I focused on the positives through the interview process. And so it began.
Taking Time to Recharge and Reflect
I took some time to recharge before going all in with the technical interview process. It gave me a chance to reflect on my accomplishments, realign with my goals, and build a few habits that were going to help me stay focused during the interview process.
I took some time to do things that would help me refuel and reset.
If possible, take a few days off. It will be worth it in the long run.
Reflecting On My Accomplishments
“One of the most courageous things you can do is identify yourself, know who you are, what you believe in and where you want to go.” — Sheila Murray Bethel.
I spent some time reflecting on my accomplishments to remind myself of how far I had come along. It was a time to reflect on what I loved, liked, and disliked about my previous job. This helped me build up my confidence and figure out the top 5 things I wanted in my next role.
Reflecting got me really excited to start talking to companies.
Using Online Platforms to Attract the Right Companies
After I had given myself time to recharge, I performed a health check on my online presence before letting recruiters know I was actively searching.
I wanted to attract the right companies and stand out from the crowd. I added all of my recent accomplishments and made sure my about me’s still reflect who I am and what motivates me.
The extra effort paid off. I was receiving around 12 emails per week with job opportunities.
I was able to focus on getting ready for the technical interviews instead of spending my time job searching or applying.
Updating My LinkedIn Profile and Upgrading to Premium
LinkedIn is where most of my opportunities came from.
My LinkedIn profile was attracting the right companies.
What worked for me? My About Me and extensive recent accomplishments noted in my most recent role attracted the companies I could see myself working for.
I’m not an expert in creating a great LinkedIn profile. I will leave you with LearnToCodeWithMe’s 5-Day LinkedIn Crash Course to help with that.
I also upgraded to LinkedIn Premium for the months I was job searching.
Applying to be an A-List Candidate
I applied to be an A-list candidate, a platform helping startups hire talent, and got approved! I was reached out to by 25 companies and had to decline many of them because of how small the companies were. Overall, I was attracting the right companies and landed a few interviews through this platform.
You can check out my my A-list profile here.
Personal Website and Github Health Checkup
I verified my website was still relevant. Recruiters emphasized on how much they loved my website and actually took time to look over some of my projects.
I also verified that I had a few projects to showcase on Github and recruiters loved to see that I was active. Most of my projects on Github are still FreeCodeCamp projects I’ve built.
Updating My Resume to Pass the Robots
My resume worked for me even when cold applying. It’s basic, but it worked. I have nonprofit and hackathon projects listed since I still don’t have too much development experience.
Applying to Jobs
I didn’t really have to apply to jobs. Again, most of my opportunities came from companies that reached out to me through LinkedIn and A-list. I did do a few cold applications and to my surprise it worked.
LinkedIn and A-List. Recruiters were reaching out to me based on the information and work I put into my profiles.
Cold applying. 4 out of the 10 companies that I cold applied to went on to become interviews, so it’s worth a shot.
Networking with friends. 2 friends were able to get me interviews with their companies.
I mainly focused on building a relationship with the recruiters that were reaching out to me because they already had interest in me and could help me get me more interviews.
Preparing for the Interview Process
“Before anything else, preparation is the key to success.” — Alexander Graham Bell
Getting My Feet Wet
It’s worth mentioning that I went through a technical interview for a more senior level role right after the lay off. I didn’t get an offer and completely failed the System Design portion. So much that they didn’t even get back to me with a rejection email. Ouch.
Nonetheless, I was proud because I hadn’t interviewed in well over a year and still made it to the final round. It helped me figure out my weakest points and started looking for resources that would help me improve in those areas.
My Coding Interview Bootcamp
This was my mini bootcamp. These are the resources I used to get me ready for the technical interview problems quickly. If this is all you will take from this post, this is what I recommend reviewing for those who, like myself, have struggled with coding challenges in the past.
7 out of 12 phone technical interviews went well enough to move me forward to the final rounds. I was interviewing for small, middle sized, and big companies and these were the 3 resources that helped me:
- Retook Cracking the Coding Interview Bootcamp: Algorithms + Data Structures. This goes through common interview questions, binary search trees, sorting, searching, and a system design problem.
- Worked through 1 LeetCode problem almost everyday. I went through this Must Do Easy Questions and Must Do Medium Questions list. I made it a rule to only spend 30 minutes on each problem. Once I couldn’t figure it out, I looked at the submissions and tried doing the same challenge the next day. You can also check out Leetcode's Top Hits lists.
- Read through the React.js docs Main Concepts section. This helped me freshen up on React.
When the Interviews Started Coming In — the 4 Step Interview
“Jumping from failure to failure with undiminished enthusiasm is the big secret to success.” — Savas Dimopoulos
0. Scheduling Interviews
After the holidays, the interviews started coming in fast. Again, I was receiving around 12 job opportunities per week. It started getting overwhelming as I was also trying to study for the technical interviews.
Creating a Calendly saved me so much time. By providing my calendar to recruiters, they were able to quickly schedule a time to chat since my availability was updated in real time. I had two calendars, one for 30 minutes interviews and the other for 60 minutes.
Since the interviews happened during regular working hours, I would study and do interviews between 10AM– 5PM. In the evenings, I would use my time researching the companies and providing availability if I was interested.
I added all of my interviews to my google calendar and created reminders. I also made a Trello board to keep track of each interview.
1. The Recruiter Introductory Chat
I went through about 30 recruiter calls, both with agency and internal recruiters. Each asked the same questions:
- Tell me a bit yourself? — This is where I tried to blow them away. I shared my motivation of why I became a software engineer, my mission, and my most recent experience. Yes, I did tell them I had recently been laid off.
- What are you looking for in your next role? — I was honest here. I gave them the top 3 things I was looking for. 1) Being able to work with a close and collaborative team 2) A mission driven company 3) Being able to take ownership of projects.
- Tell me about a project that you recently worked on? — With very much enthusiasm, I spoke about a project I took ownership of and why I really enjoyed it.
2. The Hiring Manager Call
For most interviews, I chatted with an Engineering Manager before moving on to the 1 hour technical interview. All asked relatively the same questions. Tell me a bit about yourself? What are you looking for in your next role? Tell me about a recent project you worked on?
I went through 8 hiring manager calls and they all went well enough to move me forward to the more technical interviews.
What worked well? I shared that I enjoyed taking ownership of projects, helping teams, and was product minded. That I was looking for a collaborative team to work along with and help bring ideas to the table.
I loved asking them “What type of engineer are you looking for” and “What is currently your biggest challenge”?
3. The 1 Hour Virtual Technical Interview
I haven’t always been good with technical interviews, but with preparation, I started getting better at them.
7 out of the 12 technical interviews helped me move forward to the final rounds of the interview process.
These were all virtual screen sharing interviews.
They were all mainly common questions found on LeetCode, adding functionality to existing code, or reviewing some code.
Preparation. Again, Leetcode. As mentioned before, I went through a bunch of problems (even while on holiday). Leetcode helped me identify the edge cases that I usually wouldn’t think about. The tests simply wouldn’t pass if I didn’t take care of them.
What Worked For Me?
- Took 2–5 minutes to read and digest the problem and asked any clarifying questions.
- Spoke out loud.
- Wrote down the edge cases first.
- Wrote comments as I went along.
After the interviews, I always went back and tried optimizing the problems myself. The ones I hadn’t completed, I would finish. It gave me a boost of confidence.
What Didn’t Work for Me? The 6 interviews where I didn’t do well enough were challenging for me. I hadn’t seen those type of problems before so there’s no way I was going to finish it in 30 minutes. I did finish it afterwards though!
4. The Onsite Interview
Most on sites for small, medium, and big companies consisted of the same schedule (in slightly different order):
- Problem Solving (Usually implementing some functionality or debugging)
- System Design — (Designing and architecting an application. Entails building a database schema, API endpoints, and basic frontend. Talking about it or drawing out in a whiteboard worked.)
- Code Reviewing or Debugging
- Talking with a Product Manager and Designer
- Talking with a Hiring Manager — Usually the Engineering Manager
- Taking with the VP of Engineering
Preparing. When it came down to preparing for the on site interviews, I focused on studying for the System Design portion. I don’t have much experience building distributed systems, but I started getting better and better at these questions. My secret?
Educative’s Grokking the System Design Interview course. This was the best resource I found. Not only was I able to pass the interviews, but it also helped me learn things that I wouldn’t have thought to look into on my own. Like how Twitter, Dropbox, Yelp, Facebook Feed, or a Web Crawler are all built. I was able to learn more about hashing, caching, webSockets, and proxies.
What to expect. For the System Design portion, expect to build a database, some API endpoints, a basic frontend, and think about scaling. For the rest of the interview rounds, you have already practiced through all the previous interviews. Breathe and do your best.
What worked for me. Being confident and excited. I had already studied hard and come this far. I had nothing to lose, but everything to gain. It was another chance for me to either practice or land an amazing opportunity.
Accepting the Right Job Offer
I am beyond excited to have accepted a job offer at NerdWallet. Why did I choose NerdWallet? I chose to take this opportunity because I am a big fan of NerdWallet and am excited to be contributing to their products as an engineer. I believe in their mission and everyone I met during the interview process were extremely passionate and empathetic.
I have been at this company for two months now, during this world pandemic, and can see first hand how much they care about their employees.
Cheers to a new year of loving my job, the people I work with, and the product we’re building.
Things That Kept Me Motivated
I was interviewing a ton in a short amount of time and wanted to find ways to keep me energized and motivated.
I set my intention to make the interview process as fun and exciting as possible, but even then there came times where the natural stress of interviewing got to me. The first two rejections got me sad and a little anxious, but I knew that was part of the process.
These are the things that kept me healthy, motivated, and at ease:
- Reading non tech books
- Attending online meetups
- Listening to engineering podcasts
Words of Encouragement
“To have courage for whatever comes in life — Everything lies in that.” — Saint Teresa of Avila
Being laid off is not a failure. It just means that there is something bigger and better coming.
Take care of yourself first, stay positive, and try to get enough sleep.
When the rejections start coming in, try to not let them bring you down for too long. It’s natural to feel sad after a rejection. We’re human. We’re doing our best. Keep climbing that mountain.
May you find a company where you can continue to thrive. I truly believe that if I was able to pass these interviews so can you. If companies are hiring during these uncertain times, I believe that they will be here for a long time. Go get em!
Thank You Notes
Thanks to my family and friends who checked up on me. To my boyfriend for cheering me on after every failed and successful interview.
Thanks to my previous managers and teammates who were more than excited to be a reference for me.
Thanks to LinkedIn, A-List, and Github for providing a platform that helped recruiters find me. Thanks to all the supportive and motivating recruiters that I met along the way.
And as always, thanks to FreeCodeCamp for allowing me to be part of this community that continues to motivate me through my journey.
Be kind, stay humble, and work hard for what you believe in.
Let’s be friends on Twitter. Happy Coding :)