blog

My Transition

HRT (Hack, Rebrand, Translate)
Discipline
Doubt

Classic example of taking a booming industry for granted.

A rainbow water-color explosion siphoned into a black hole from the left-hand side, with icons connected like a graph on the right

Discipline is the opposite of doubt

I knew very early on that a very small percentage of people make it long-term in physics. Last I checked, there’s one permanent position for every 20 PhD’s. I also thought I’d either be different or I’d figure it out. In the back of my mind, I also always assumed I could finish my PhD, and join a large tech company fairly easily, so long as I kept coding day to day.

What a pleasant surprise it was to look start looking for a job for the first time outside of academia in the fall of 2022.

I plan to do a more thorough right up, but basically I did three things to get the job I ultimatley accepted:

  1. Leveraged the relevance of my current research to appeal to industry. Really put myself out there in conferences with a known corporate component (yuck).
  2. Really learn data structures and algorithms. This is most related to the quote above. I cannot recomend neetcode.io enough. I did everything up to advanced graphs. No fancy LLM tool can replace good fundamentals. The places you’ll actually want to work won’t just want you to regurgitate the answer anyway.
  3. Practice Practice Practice. I ate sh*t at a bunch of interviews. I practiced using exponent where I did mock interviews with people also trying to land jobs.

I ultimatley got lucky, but I had to work very hard, for very long, with no guarantee at all that my efforts would be rewarded. It took me a little over a year, and it was rough…

Additional points:

It’s important to choose between research and engineering positions. There’s a ton of overlap, but they also have different interviews and different trade offs. It’s ok to try something other than research.

Consistency is great, but my process ended up being bursty. I’d always try to do at least one small thing to better position myself for my transition. Edit my resume a bit, ping someone on linked in. Ideally it’s something really important like 1 or two leetcode questions, understanding transformers, etc.

Embrace failure. The system is broken. LeetCode will not make you a better coder, but it’s at least in the direction of a meritocracy, rather than just a credential check. I was really, really, bad when I started. It felt for so long like I wasn’t making progress, and was just wasting my time. Stick with it, and if somehow possible, try to enjoy it. I really did start liking LeetCode once I got a handle on recursion. Dynamic programming and Graphs can be fun. Probably just Stockholm Syndrome…

I had a supportive PI. This probably made the biggest difference. I was still held to deadlines, but my output dropped, and that was OK. If you’re a post-doc, I think this is really baked into the deal. It’s a temporary position where you have to figure out the next position. You’re likely being under paid and over worked given your talent, skillset, and education.

Even if you’re not transitioning, your last year should be traveling and giving talks to get your name out there. Sometimes, you’ll get a PI that will want to squeeze every drop of productivity out of you. If your not transitioning, this is a really tough spot to be in, as you will almost certainly need the direct support of your PI for any faculty or scientist position you’re going for.

If you are transitioning, then you really just need to do enough to keep your contract going, so you can keep the lights on while you cry over a fence-post error in your 17th binary search question. I’m so grateful for my PI who was supportive, so I could tell them what I was up to, how I planned to work, and what my intent was. This was mutually benificial as my PI didn’t have any suprises, I still tried my best to deliver on what we agreed on, and I was really able to invest time and effort into my transition.