My Mid-Career Job-Hunt: A Data Point for Job-Seeking Devs

I wrapped up my job search recently, and I’m happy to say that I’ll be joining a YC-backed startup called “Heap.” I thought I’d share a little bit about my job search in case the information may benefit other job-seeking devs. I’ll go over the pipeline of places I applied to and the result of each application. I’ll also talk about things like salary, resume formatting, coding challenge prep, and interviewing. I don’t intend any of this to be advice. Rather, I hope it’ll be a data point that other job-seeking devs could use to inform their own expectations about their search.

Job search time: ~65 days

From the first application I filled out till I signed an offer, my search took about 65 days. My search probably took longer than the average search because it overlapped with the holidays. In some cases, moreover, I intentionally slowed down the application process so that I could have more time to prep for interviews.

Application Funnel

# of applications: 16

  • Otis: Made it past the first interview. Didn’t continue in the process. They said I wanted too much money.
  • Buzzfeed: “Moved forward with another candidate” after remote onsite
  • Carvana: Did the first technical interview (no coding challenge). Thought it went really well. Still didn’t wind up moving forward.
  • Ozone (contract): Never heard back
  • Automattic: Close to receiving an offer (wrapping up their trial project), but withdrew from the process to accept the offer from heap.
  • Square: Made it past the first technical interview, but not past the second. More on this in “Coding Challenges.”
  • Dark: Never heard back
  • Betterup: Didn’t make it past the resume stage
  • Supergreat: Withdrew from hiring process after learning more about the company and having too many options to pursue
  • Mozilla: Didn’t make it past the resume stage. May have dodged a bullet since they just laid folks off.
  • Stripe: Didn’t make it past the resume stage
  • Reddit: Made it past the first technical interview. Didn’t pass the onsite. More on this in “Coding Challenges.”
  • Lantern: Made it past the first technical interview, withdrew before completing the take-home coding challenge to accept offer at heap.
  • Ellisen Group (some random contracting group): Never heard back.

Resumes: Traditional vs. “Branded”

For some of these companies, I applied with a non-traditional, branded resume. For example, here’s what my Gradle resume and cover letter looked like:

Coding Challenges

Some of the companies I applied to used coding challenges to sift through applicants. Since I don’t have a computer science degree, these challenges were a bit scary. To prepare, I went through about 60 challenges, most of which were on Leetcode. I also did nearly all the challenges on arrays from Cracking the Coding Interview. I focused pretty much exclusively on array-type questions (my understanding is that these were most common question type), which hurt me in the Reddit onsite.

“Career Capital” Review

Cal Newport coined the phrase “career capital,” and I’ve found it to be a useful metaphor for understanding actions that promote career growth. It’s hard to have an accurate view of the relative value of your career capital portfolio until you actually look for a job. After going through the job hunt process, I saw that:

  • This blog did come in handy during the job hunt. When I started the trial process at automattic, I was nervous to find that there were several other folks working on trial projects and I was worried about standing out. However, when I started the project several people mentioned that they were familiar with me through my blog and said that it was a good blog.
  • While I was happy this blog helped a bit during the job search, I think I’ve actually over-invested in writing as a career capital category. For a while, I was writing once a week. Lately I’ve done much less than that. My plan for 2020 is to publish 8 posts and to focus more on other career-growing activities like improving my algorithm/data structure knowledge and doing some open source work. There are lots of folks who don’t value blogs at all when it comes to evaluating your skill. They, understandably, want to see code.
  • Attending the recurse center early in my career was a great decision. I learned a ton while I was there, which of course made me a more attractive hire and effective employee. I had several interviews at companies recursers worked at, and I even had one interview where the interviewer was also (unexpectedly) a recurser. RC works with companies that I’m not sure I would have discovered on my own, and those companies are doing neat things and seem to have really awesome cultures. The RC jobs team was also very helpful and encouraging during the job hunt process.
  • All of the little side projects I’ve done with react, node, and javascript really paid off. I actually couldn’t use Kotlin for my remote all-day interview at heap. I used javascript instead and did really well. It also opened up the door for me to do non-android work, which I’m really excited about.

Negotiating the offer

I think this is obvious, but I still run into people who are uncomfortable negotiating, so I’ll say this: I negotiated. I countered the initial offer. I’m glad I did. Josh Doody’s talk was helpful here. This is the second time in my career I’ve used his framework for salary negotiation.


  1. I actually did also apply to 3 product manager positions. None of them panned out. Made it to an interview stage at one company, and I thought it went quite well. Apparently, it didn’t go well enough. I’m glad. I’m happy where I wound up.
  2. At one point in the talk, Lettvin says that once an internal recruiter played a trick on them and gave them their own hiring packets. The committee voted not to hire anyone who was on the hiring committee. Lettvin also repeated an idea from his colleague Steve Yegge that for any person who is working at Google, you could easily find 5 people there who would not have hired that person. He said all of this to accompany a slide with the words “noisy,” “inaccurate,” and “arbitrary,” all of which were meant to describe the interview process at Google. Yikes. Strong words.
  3. One of those side projects, by the way, was actually a web app that allows me to crank out these branded resumes easily.

Wannabe philosophy professor turned wannabe tech entrepreneur.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store