November 2021
This year, I set out to find a new job in tech for the first time in almost a decade. Here are some thoughts on the process.
This time around, I decided to try a bunch of things that I'd never done before.
I'd always gone directly from one job to the next, and in retrospect that was a mistake. For instance, I've always wished I'd taken a couple extra weeks to drive across the U.S. from Boston to San Francisco, on my way to join Google in 2005.
This time, I wanted to set aside a few months to clear my head, during the summer when the weather is nice(r) here in England. So I planned my departure further in advance, and gave my previous company some time to prepare.
(These days, I would always advise giving yourself at least two weeks of doing absolutely nothing after leaving a job. When you've got something else lined up, while hiring companies are eager for you to start right away, most will give you up to a few months if you ask for it.)
I'd also always stumbled across my previous jobs a bit randomly, so this time I wanted to take more time to consider what was most important to me, and compare several options.
Out of everything that was happening in tech right now, where should I start?
Taking a step back, I believe that a lot of the progress that we've made in our civilization has come as a result of building social structures and shared belief systems that help coordinate our fuzzy brains in particular directions.
Paid and volunteer jobs are one key structure like that. For me at least, the act of working with others towards a particular goal encourages me to learn a lot more things along the way than I'd pick up left to my own devices.
So it follows that I could choose my next job partly by what I wanted to learn, and who I wanted to become as a result.
There were many things that I started with that carried through to the end of the process:
I wanted to work on something that was contributing to something that I strongly believed to be worthwhile both in the end and along the way; one of my tenets was to work on something worth failing at. In my case, this meant working on something related to the likely challenges of the next few decades: either directly taking on climate change, or at least working on technology that could help with the possible infrastructural and social instability.
I wanted to be in a situation that would push me to develop my skills and knowledge in building and maintaining healthy organizations. My leadership and mentoring work at my previous company had been starting to become as rewarding (in a dopamine sense) as coding, and I'm getting to a phase of life when it's more gratifying to be giving back to the community. In my thinking about software sustainability, I've come to believe that software is only alive if it has a living community behind it, and so I wanted to get better at building great communities that build great software.
I wanted to be somewhere that would push me to learn different technologies. Having been "Head of Mobile Engineering" in a startup meant that I got a lot of recruiting interest in mobile-centric jobs (people like to pattern-match), but I wanted to broaden my skills.
I wanted to learn new things about the world. Because I'm product-minded, I think the ultimate source of truth for what to build is based in someone's experience "on the ground". I wanted to learn about different people who had different problems that I could help build products for.
I wanted to join a company with different problems than my old one. Every community has its quirks, but spending time in a company with with different ones would help broaden my thinking about how things can work.
I wanted to join a company that was committed to remote work. I did well in the forced COVID remote situation of 2020, and so I wanted to go to a place that was organized around remote work rather than struggling with awkward half-measures. I find it a really interesting challenge in leadership and organizational cohesion—it's the kind of extremophile situation where you have to learn to do certain things deliberately to get by.
My biggest pet peeve in this search was job postings that talked about being "remote friendly", without being specific about which countries or time zones they were willing to deal with. U.S. based companies seemed to be particularly bad in assuming that everyone reading the listing was in the U.S.
This was particularly important for me, because I've become fanatical about getting enough sleep the sake for my health & productivity. Given that I was looking for leadership roles, the odds were basically 100% that working for a company with a Pacific Time center of gravity would wreck my sleep sooner or later.
Companies and job sites did get a lot better at labeling this as the year went on, though.
On the other hand, there were some things that I initially thought were important, but didn't feel right to me when they later showed up in specific opportunities:
Working on something directly climate-related. Despite all my research, I had trouble finding things that met my other criteria (especially UK-friendly remote) and also were tied closely enough to concrete user experience.
Avoiding venture capital funding. I had opportunities to talk with a couple small bootstrapped partnership firms built by people I greatly respect. In many ways, these were dream jobs for me. But such small organizations wouldn't give me as many opportunities to learn how to build and maintain larger engineering organizations, which I was increasingly drawn to.
Many people also asked me if I wanted to start my own company, but I've seen how demanding that path is. To do that well at it, I felt I would need to have a belief about a problem in the world burning deeply within me, strongly enough that I could share that fire with investors and potential colleagues, and strongly enough to light my way through the dark days in any startup's life.
I didn't feel that I had anything like that this time around. But this did push me towards companies where I thought I'd be brought into contact with problems that might inspire those beliefs in the future.
Even though I didn't publicly announce my departure in the spring, it didn't take long for people to start reaching out.
One of the things I know about myself, though, is that I have a tendency to try to optimize for the next thing. If I started having conversations with companies right away, it would be hard for me to keep myself from spending time researching them and getting mentally wrapped up in this or that possibility.
Because I didn't want to take the first opportunity that came along this time, I asked to defer those types of conversations until the fall, when I was ready to fully engage.
After a summer of reading, traveling, and spending 6 weeks at the Recurse Center, it was finally time to get back to work. In mid-September, I started spending my weekdays focused on job search conversations and interview prep.
Earlier this year, I had started collecting notes about companies doing interesting things that might allow me to work remotely from London. I paid close attention to climate tech sources like Climatebase, My Climate Journey, ClimateAction.tech, Climate Tech VC, and Keep Cool. I also followed general European tech newsletters like Sifted, Sunday CET, Seedtable, and Heartcore Consumer Insights. When I came across interesting companies, I'd accumulate notes on them in Roam.
When it was time to start the process, I went through that list and narrowed it down to the most promising 10 (which felt like too many at the time), and reached out to them all at once. Where I had a contact, I initially reached out through my network. When I didn't have a warm enough connection or didn't get a response back in a week or so, I cold-applied to their online application forms.
(Side note, if you want inspiration about writing effective cold emails, read this thread.)
The Recurse Center's career services arm also connected me with several companies—their program is mostly funded by recruiting fees from companies that hire their alumni. Even though the RC career staff sometimes encouraged me to take conversations with companies that were unlikely fits, by and large they respected my wishes about timing and communication.
Out of curiosity, I also posted my profile on LinkedIn, AngelList, Climatebase, and Y Combinator's Work at a Startup. The latter led to the most interesting contacts, including the only inbound contact that I bothered interviewing with.
This was the first time that I've interviewed directly for Engineering Manager roles, so it was my first enounter with the management behavioral interview ("tell me a story about a time when...").
I found a lot of good sample questions online, and spent some time writing up stories from my work history. This is an area where my time off worked against me, though. Because I'd taken the summer to get my head out of my previous job, and I no longer had access to the work documents that could jog my memory, I struggled at this more than I should have. In my next role, I plan to make an effort to capture interesting stories as they come up, at the same time as I'm maintaining a brag sheet.
One thing I learned in interview feedback was that I was leaning too hard into a "servant leadership" style when discussing my approach, because I believe that being too ego-centric gets in the way of learning and getting things done. On the other hand, I realized that I still did need to give others the base confidence that they could trust me to take ownership of teams and their problems, and I sometimes forgot to project that aspect.
Since I was applying to more management-oriented roles, I didn't get as many technical tests, apart from talking through past work on my resume, and some minor system design discussions. Even though I spent a bit of time on LeetCode practice just in case, I didn't need it for any of my final options.
That said, my least favorite technical test came from a company that sent me a bunch of Triplebyte tests: a mixture of technical knowedge questions about different languages, and one where I had to do 3 LeetCode-style problems with a hard 10 minute deadline for each one. (To me, this only reinforces a strange testing ritual that has very little to do with day-to-day work as a software engineer.)
On the other hand, my favorite take-home technical test involved setting up a server that implemented a complex algorithm from an English description (with time ahead for planning). It struck me as efficient and relatively unbiased initial filter, and also more reflective of actual software engineering work. The same company followed up with another similar task, but with a pairing session in the middle, which seemed like a good way to check work and get a sense of communication & collaboration styles.
It was eye-opening to be doing formal interviews for the first time in forever. After 20+ years in tech, I'm fundamentally confident in my skills—and with all my privileges I was already doing it on easy mode.
And yet I still felt plenty of doubt and frustration with the process.
Some things I came to appreciate:
All this is to say that I've got a lot of ideas for how to do better next time I'm doing the hiring. (And to anyone who's been through an unsupportive interview process at my hands in the past, I'm sorry.)
Despite some staggered start times, the three offers I most wanted to consider fortunately came together in a two week period. During that time, I set up more calls with people at the companies to get a better picture of each option, which served the dual purpose of helping me decide, and getting a head start on onboarding wherever I ended up.
Before this time, I'd never given much thought to reverse-interviewing, but now I would recommend it to everyone in the late stages of an interview. (My favorite question was: What gives you the most discomfort about working at this company?)
The company that moved the fastest had more of an advantage than I'd expected, in that I had more time to talk with its employees and get used to the idea of working there.
Even though I had an early hunch about where I wanted to go, I still spent a lot of time thinking from different angles. For example, to try to uncover my expectations, I tried exercises like writing hypothetical 6-month performance self-assessments for myself in each role, or how I'd write about each one on my resume 4 years down the road.
Finally, one night, I came to a decision.
So where did I end up? I'll talk about that in my next post...