My 2022 Job Search (as a Senior Software Engineer)

Date: 2022-12-21 | software-engineer | career | interviews |

Earlier this year I left my job as a software engineer at Instagram. I'm risk averse so I was also searching for a new job to weather the economic downturn. Seeing as this was my first interview loop since my 2019 job search, I decided to take notes so I could compare experiences / data.

Here I'll share some of my experiences in my 2.5 month, 51.4 hour search for a job this year - this time as a Senior Software Engineer.

Values

I think it's important for all initiatives to start with values. What do you care about? How will you measure it? Are you sure that's what you really care about?

Without an idea of what you're trying to accomplish and how you'll know you've accomplished it, it's incredibly hard to make any progress towards that thing. Moreover it's important to remember that a job search is not just about you trying to fit into a position, but you testing positions to see if they'll fit you - it's a two way street.

So I started off my job search by really thinking about what it is I valued and what I wanted to do in my life. I came up with 3 big buckets.

  • Impact - At the end of the day, the reason I expend effort is because I want to make a change in the world. If what I'm doing is not visibly impactful then it seems like a wasted effort.
    • Important / Good for the world
    • High opportunity for impact - autonomy to get there
    • Value - would I invest in this? -> must be a yes
  • Growth - While making impact I think it's important to push yourself to be better. This may take some cycles away from other things near term, but long-term will typically pay back dividends in multiples.
    • Lead and scale product / eng / company as a tech lead
    • Use real-world tech (like available publicly)
    • Learn about more org types (esp smaller)
  • Fulfillment - At the same time, I will not subject myself to toxic culture / harm my health / or sacrifice my values to get these things done. This is a guardrail against toxic / hostile hustle culture and what I consider the dark (and incorrect) side of humanity / capitalism. There is always a better way.
    • Good WLB
    • Autonomy
    • Interesting domain

There's a lot here and this is the condensed version from multiple iterations on what I actually value. The goal isn't necessarily to find something with all of these but to keep them in mind as things you value so you can weigh your options with more authenticity.

My 2022 Interview Results

Interviewing

First some stats:

  • Stats
    • Total Time - 51.4 hours
      • Over 2.5 months
    • Total Pass Rate - 90.3% (55.56% well)
      • Total Interview Pass Rate - 81.82% (45.45% well)
    • Total Offers - 5

Pass means I have data showing I passed, well means I passed and felt confident I passed / did a good job).

All interviews are really trying to answer a few things:

  • Can you code?
  • How do you solve problems?
  • How do you deal with / work in a team?
  • Can you design software systems?
  • Can you land impact? How much and how deterministically?

These are roughly ordered by importance with respect to seniority. For instance, questions at the top of the list are basically the only things that matter when you're junior but as you become more senior the questions near the end gain more sway.

This, I think, was really the big change from my 2019 job search and interview loop - that and that more cos responded / reached out to me now that I have more experience / FAANG on my resume.

Interviews are still basically split into three categories:

  • Coding
  • System Design
  • Behavioral

I will say that there was a high prevalence of non-LeetCode style qs in my loops - instead more on practical design, implementation, or debugging. Replit and other online editors w execution were popular.

Interviewing as a junior the ratio of study / importance was something like this:

  • Coding (70%)
  • System Design (20%)
  • Behavioral (10%)

As a senior, the script flips a bit. It doesn't mean that Coding isn't important - more that Coding is now the bare minimum so you should be able to do that proficiently and excel at the others.

  • Coding (30%)
  • System Design (40%)
  • Behavioral (30%)

This makes sense because the point of code is never code. It's always to enable something else. So as you get more senior, theoretically you bring more value which can only be true if you understand the non-code parts better. That's my mental model anyway.

My hypothesis is that at Staff+ the numbers continue to pull away from Coding. But, again, that doesn't mean you can be bad at it - I've failed numerous candidates several levels above me because they could not code.

My SWE interview training regimen remained similar to my 2019 one though was a bit more varied (and a bit more lax?)

  • Coding - 2 medium qs in < 20 mins or 1 hard in < 30 (type these out and make them run - many interviews make you execute)
    • LeetCode -> code in editor
  • System Design - 1 System Design question (~45 mins) - full Creation Cycle (observe, create, reflect) with drawings - answer followups if they have them
    • Find questions online, draw on paper / using a tool like Google Slides / lucidchart etc
  • Behavioral - Pick a few projects you want to talk about and build talking points around them. Practice by going through big lists of behavioral questions and answering in < 2 mins each while trying to plug some of those projects.
    • Find questions online and talk out loud, write down good answers you come up with

Takeaways

  • Focus on your values - There's a lot of opportunities out there. Your values are the only thing that can help you decide if you're settling or making a good choice.
  • Interviewing always takes longer than you think - IME it always takes about twice as long as I originally expect.
  • Don't take it too seriously - It's a job, not your life. If you don't like it / are ready to move on - do it. You have that autonomy. Flex your volition.

Next

I took a few weeks off to do nothing. I've now started at my new gig but that info is currently in invite-only beta. I'll be sharing more in the coming weeks - likely by my 2022 year in review.

Want more like this?

The best / easiest way to support my work is by subscribing for future updates and sharing with your network.