Job Search by the Numbers
I’ve made a few posts recently about my job search - I found that it is something of an all-consuming process therefore it’s not surprising that it would be the topic I’d be most interested in writing about. I’m glad to have this medium in which to collect my thoughts, and to share my experience with anyone who may be going through something similar. I’m now happy to say that I’m jumping headlong into a role as a Software Engineer at Robinhood - the new challenges, experiences, team, and code that I’m getting to explore has been thrilling in the short time I’ve been with the company! I’m stoked to be a part of the Robinhood team, excited about the future, and thankful to all my new colleagues for welcoming me warmly despite the challenge of doing so remotely. The effort and care that has been put forth by both management and the HR department to smooth over the bumpy road that distanced on-boarding lays out ahead of new hires has been impressive!
Being a “math person” I became interested in looking at the numbers that came out of my search. Since I tracked my search fairly diligently in a spreadsheet, I can pretty quickly answer simple questions around my process and use these numbers as a base for reflecting on how the search went overall.
I started my search by simply listing out every company I could think of that might have a position open to me. I didn’t discriminate by industry, location, or domain, I just added companies to a list as I thought of them. While I didn’t end up applying to even half of these, I wrote them down nevertheless. By the time I started at Robinhood I had ended up with a total of 167 companies listed, of which I applied to 67. The 100 companies that I didn’t submit applications to either didn’t strongly interest me or didn’t list positions on their careers page that matched my skills.
From these 67 applications I received rejections from 24, or 35.8%. I don’t know what the “going rate” for rejections is, and I anticipate that I’ll continue to get more as time goes on. From these rejections, the majority of them are automated emails stating something along the lines of “we’ll be moving forward with other candidates, thanks for applying”. I don’t have a lot of commentary to add to these figures, but will say that receiving a rejection is preferable to never hearing anything - I understand that many companies get a ton of applications and can’t personally reach out to all applicants, but hearing an automated “no” is better than hearing nothing at all.
Better than an automated rejection, or a rejection of any kind, is a positive signal and a move forward into the interviewing phase. In total I completed 57 interviews before finding my current role. These interviews ranged from brief phone calls with recruiters to deep, multi-hour technical interviews requiring algorithmic knowledge and analysis. The majority of the hiring processes that I went through had 3 or 4 interviews, none asked for more than 5. The most common experience was starting the process with a phone call with a recruiter; advancing to either a video or phone call with someone in the engineering department, usually containing a mix of technical evaluation and questions about the experience that I’d bring to the role in question. If I advanced beyond this point in the process successfully I’d usually find the next set of interviews to be a multi-hour virtual “on-site” that would include conversations with a manager, more technical evaluations with engineers, and at least one conversation with a higher-level leader in the engineering department (usually a Vice President or Director). These interviews were grueling: on site interviews are already long and stressful, but to do them from isolation without having the upside of visiting an office and meeting new people face-to-face made them especially challenging.
Some of the interview processes included take-home assignments in which I was asked to create something to demonstrate my abilities. I have mixed feelings about this as a part of the interviewing process: on one hand I believe that it provides a candidate a better opportunity to demonstrate their abilities than a more classic “whiteboard problem”, but at the same time I found them to be quite time consuming and not very enjoyable. They each asked for basically the same thing: connect an API to a UI, add a little polish, follow best practices, write a few unit tests. I never struggled to complete any of these assignments, but I was never particularly impressed with my solutions either: none of the problems had a scope large enough to really let me flex my architecture or design skills. I did appreciate the companies that took time to review the code that I sent over and prepare intelligent, nuanced questions to ask as follow-ups to my submissions. Some of the best technical interviews that I went through were centered around reviewing my pre-written code samples, the engineers on the other side of these great interviews had clearly put in time and effort to prepare; it didn’t go unnoticed on my end.
Casting a wide net to begin my search allowed me to be more selective as I continued down the process. Once I established that I’d likely be receiving a few offers, I decided to save myself time and energy by withdrawing applications from roles that I knew wouldn’t be my top choices when the time came to make my final decision. In total I withdrew 7 applications before receiving either rejections or offers. Initially I was a little hesitant to close doors to any opportunity since I was in the uncomfortable position of being without work, but it ended up being the most professional and respectful course of action in regards to everyone’s time.
The entire search process was wildly uncomfortable for me, especially in the time that I had no offers open to me. I was let go from WeWork on April 30th, and it took until June 5th for me to receive my first offer. In this period I did a lot of thinking, a lot of growing, and a lot of self-examination. I’ll admit that during this time I wasn’t always my best self - my mental health suffered, my self-confidence was low, and I let some of the joy fall out of my life. I know that I could have done better, and if I ever find myself in a similar situation in the future I hope I’ll be able to remember the experience I had this time around and use that to fuel myself in making better decisions. Looking back I am proud of the rapid turnaround that I was able to accomplish, taking just 36 days to find my first offer. If I had been in a position of needing a job immediately, for financial or other reasons, I could have taken that first offer and been satisfied.
Thanks to the savings I had accumulated I wasn’t forced to accept the first opportunity that came along, and instead was able to accumulate 7 total offers before making a choice. Overall, this totals to 10.4% of applications submitted resulting in offers. I’m surprised that the rate is this high, I expected a much lower rate of success.
Each of these offers was a highlight, all of the jobs that were opened to me could have been interesting and would have presented varied challenges that I could have enjoyed. I enjoyed the days that I tendered these offers, but they weren’t the only positives that came out of the searching experience. One of the most memorable moments that I enjoyed was having the opportunity to show off some of the open-source code I’ve written, getting more eyes on projects I’m proud of. I always like sharing my work! I also had the unique opportunity in the course of my search to meet Arianna Huffington, the conversation we shared was one that I’ll remember for a long time! Overall the most significant positive that I know I’ll carry forward is a sense of confidence in my independence and skills as an engineer: I’m able to push myself, do work that others value, and self-motivate no matter the challenges that lie in front of me.