After five and a half years I have finally made the next step in my career and found a new position. Getting there took hundreds of hours of practice through side projects and LeetCode outside of my job and even though there were many rejections along the way things eventually worked out. I kept very detailed notes of every interview I had: what questions I received, how they went, and statistics about my hunt. I think this information may be useful to other software engineers looking for a new position so here I will publish some background and the statistics.

    It’s important to note that everyone’s job hunt experience will be different depending on their background and interests so in order to better frame this information a very brief overview of my career is necessary.

  • I am a software engineer with five and a half years of experience working in the big data processing space.
  • I’ve written a handful of microservices, done a lot of ETL work, and a spent even more time on devops and support.
  • I was looking to move into lower level development with Rust so I was applying for mid-level positions that would afford me that opportunity. This is an area where I have no previous professional experience; only reading, hobby projects, and a very small amount of open source work.

    With that in mind I think we can move onto the stats and then do a little reflection about them.

Metric Value
Jobs applied to 19
Count of referrals 4 (21.05% of all jobs applied to)
First interviews completed 8 (42.11% of all jobs applied to)
First interviews I declined 1 (5.26% of all jobs applied to)
Offers 2 (10.53% of all jobs applied to)
Rejections (all types) 12 (63.16% of all jobs applied to)
Rejections without first interview 7 (58.33% of rejections (all types))
Rejection after first interview 5 (41.67% of rejections (all types))
No Response following application 4 (33.33% of rejections (all types))
Mean time (days) between application date and first interview 13.5
Median time (days) between application date and first interview 13.5
Shortest time (days) between application date and first interview 4
Longest time (days) between application date and first interview 23
Mean time (days) between application and rejection 40
Median time (days) between application and rejection 33
Shortest time (days) between application and rejection 8
Longest time (days) between application and rejection 78
Mean time (days) between first interview and rejection 11.6
Median time (days) between first interview and rejection 8
Shortest time (days) between first interview and rejection 2
Longest time (days) between first interview and rejection 29
Mean time (days) between first interview and offer 24
Median time (days) between first interview and offer 24
Shortest time (days) between first interview and offer 17
Longest time (days) between first interview and offer 31

    A few things to note about these stats before analysis:

  • The sample size is small at only 19 applications. I’m pretty sure that this means that it’s not statistically significant, so this may not be a good measure of success. Maybe if I’m feeling funny I’ll apply to a bunch of jobs I don’t want to round out the statistics.
  • Experience varies heavily between candidates, so these stats may not very well inform another person’s job search
  • I will not publicly share the source of this data (it will be available on request if I like you and you ask nicely).
  • Some of the dates that played into my stats are influenced by my own schedule and whims, so there are a few that could have moved faster had I been available at different times.

    There are probably a few other stats I should have kept track of like how many rounds of interviews there were, and the time from the last interview to the offer. I was mostly interested in how long it would take to start and complete an interview process.

    Honestly all the applications and interviews felt pretty horrible and draining at the time, but looking back at this it could have been much worse. At the time it seemed like I was applying to many more jobs than I was in reality and that my response rate felt much worse than it actually was. From what I’ve been told a 42% first interview rate is actually pretty good. Some of my friends in comp sci and other industries have horror stories of applying to a hundred jobs before they finally get an offer; though I have a feeling that “100 applications” is hyperbole the number is probably still high.

    All in all, the job hunt sucks. If there’s any tool employers have at their disposal for keeping people at their job its that the job search and interview process is such a nightmare. I sunk so much time into learning how to answer interview questions and I’m not actually sure I’m a better engineer or not because of it. I think some of it has helped my general problem solving skills, but I probably could have got more out of side projects and contributing to more open source instead.

    PS: Don’t use Rust for statistics work. Just use python and save yourself some headache.