I started the online post-bacc program in January 2021 with two goals:
- To complete the program in 1.5 years
- To secure a full-time position at a major tech company
I am on track to complete both goals by June 2022. Today I will talk about how I secured a job at a FAANG company.
When I began the post-bacc program I did some initial research on the process to land a job at a major tech company. I quickly learned that the entry-level job market is highly competitive. I read stories about how students submitted hundreds of applications only to land a handful of interviews, which led to only 1-2 job offers. Because of this, I made it a priority to begin preparing for my job search effort.
I also learned that in order to land a job in today’s entry-level market you need to succeed at the following:
- Creating a resume that will pass screeners
- Submitting dozens of applications
- Performing well on the behavioral and technical interviews
So, in addition to my regular coursework, I focused on these three areas.
Creating a resume that will pass screeners
I started off with building my resume, since that was a requirement to apply to many jobs. I had an existing resume which included prior work experience that wasn’t directly relevant to the software engineer roles that I applied for. I used this existing resume to apply to jobs, and after a dozen rejections and no responses I realized the resume needed to be updated.
Before I started making resume updates, I researched online and found a few resume templates that people used to successfully land jobs at Big Tech. So, I decided to use one of these templates.
Moving onto the content revisions, I summarized all of my prior work experience (all not related to a SWE role) into three bullet points. I then highlighted my projects from OSU classes (CS344, CS290, CS340, CS162), as well as two personal projects (a minesweeper bot and a pet photo web app that uses machine learning). I also added a list of the languages and frameworks that I had learned while in the post-bacc program.
After making these revisions, I tested out my new resume by submitting it along with a dozen job applications. Much to my delight, I received a couple interview invitations from a reputable companies. So, I took that as a sign that my resume could at least past some screeners.
Submitting dozens of applications
Through my research I found that the typical application effort for entry-level jobs is lengthy, faced with countless rejection, and basically a numbers game. So, I prepared myself mentally for this and set a goal of applying to at least 5 companies a day.
I attended one OSU career fair, but quickly realized this was not an efficient approach to applying for jobs. So, I searched for entry-level roles using LinkedIn, Glassdoor, Indeed, Handshake, and a bunch of other job boards. Once I found these jobs, I would apply to the role directly on the company’s website (during my research, I read that this was more effective so I took this approach).
My efforts were fruitful. I submitted 94 applications, and received 7 interview invitations.
Performing well on the behavioral and technical interviews
My initial research helped me realize that the behavioral and technical interviews were the hardest part of the job search process. So, I prepared for these over the course of 6 months.
I prepared for the behavioral interviews through a couple of mock interviews through OSU, as well as using a peer-based interview prep service called Pramp. I also researched various behavioral question and response patterns.
I prepared for the technical interviews by purchasing a Leetcode Premium membership, an Educative Premium membership, and the book ‘Cracking the Coding Interview’. I studied these materials and worked through practice problems. I also practiced technical interviews on Pramp.
In total, I completed 43 Pramp mock interviews, 127 leetcode problems, and 74 educative problems.
When it came time to interview I was still nervous. However, I was able to perform well enough thanks to the amount of time I spent preparing. And because of this I was able to land a solid entry-level job in Big Tech.
The end?
Searching for a job was a rollercoaster ride. After countless rejections I began to feel inadequate. But then I’d land an interview and feel both joy and anxiety. I also failed interviews at a couple of my target companies, which made me feel like I would never get a job. But, I knew that I had no option but to persevere and keep grinding until I succeeded. And it all paid off!
I realize that this isn’t the end of my search for a job. I know that in the future I could find myself looking for another job for countless reasons. So, I plan to keep solving leetcode questions and taking Pramp technical/behavioral interviews.
I have heard that the application process gets better once you have a couple years of experience under your belt. And that recruiters will reach out to you directly instead of you having to submit dozens of resumes. I guess I’ll find out in due time!