Leaving UrbanCCD and Chicago

In early April, I started making a plan with my boss to leave my job at the end of June. The last three months have flown by (of course). Last week I finished up my last major task - recruiting and hiring my replacement - and now I have ten work days left to tie up loose ends.

So what's next? When I tell someone that I'm resigning, they reliably ask at least one of these questions:

  1. Why are you quitting?
  2. Are you leaving Chicago?
  3. Where are you working next?

I'll use this post to answer those questions in some detail, but here's the quick verion:

  1. I have a great job, but I'm looking for a new challenge with a bigger team.
  2. Probably.
  3. I don't know yet.

1. Why are you quitting?

I have a really cool job. I work at an urban science lab as the lead engineer of an open data platform. Getting to work in urban policy-related software was a dream job. My first internship out of high school was slinging spreadsheets for my hometown at the Youngstown Office of Economic Development. In college, I decided to major in computer science after seeing big data techniques at work in a public policy lab. My senior year, I withdrew from every class I didn't need to graduate so I could spend more time practicing machine learning on Chicago open datasets. So when I stumbled on a job after graduation building open data applications with Python, I jumped on it.

As I was weighing the job offer, I knew there would be tradeoffs. The biggest was that I was stepping into a role meant for someone more senior. On the one hand, I relished the opportunity to dive into the deep end and be forced to learn lots, fast. On the other hand, junior roles exist for a reason: new engineers grow quickly learning from more experienced coworkers. While I would work with plenty of crazy smart people in this job (it so happens that lots of PhDs work at the University of Chicago and Argonne National Lab), my day-to-day of designing and implementing software would be alone or with junior engineers I was mentoring.

I decided to embrace that tradeoff. I don't regret the decision, but I did grow weary faster than I expected. I got increasingly frustrated when I hit my head against the ceiling of my lack of experience, trying to solve problems that I couldn't self-teach my way out of. 80% of the time, those were people problems, not tech problems: figuring out how to prioritize features to make our products relevant to our users, or trying to bridge teams with conflicting incentives. Sometimes I rose to the challenge and sometimes I fell flat on my face.

I could keep getting better at these problems at my current job, but it would be a slow climb. I want to level up faster by hitching myself to an engineering team firing on all cylinders and learn how a great team works by contributing to one.

2. Are You Leaving Chicago?

Probably - at least for a few months. After my lease in Chicago expires In July, I'm going to take a road trip around the States and Canada that should take at least 3 months. Here's roughly where I'll be going, starting by buying a car in Youngstown and corkscrewing around the eastern seaboard before heading west. (The pink line is a round trip flight from Nashville to Miami. I want to visit a friend in Miami, but I don't have couches to crash on in the Deep South, so I'll leave that part of America for another day.)

Detail on the Northeast:

I'll use the trip partly to scout out places I might like to work, trying to snag coffee dates with potential employers when I'm rolling through their town. I'll also set aside time for brushing up on coding interview questions and side projects. But of course, the trip isn't just for career stuff. There aren't any tech firms in national parks, but I'm definitely hitting up a few. And my itinerary has a strong bias towards cities with friends or relatives I can visit.

But where will I end up when the trip is done? I love the Rust Belt, having bounced around Youngstown, Pittsburgh, Cleveland, and Chicago my whole life. But I think it's time for me to step outside of it for a while - both to get a different perspective and try out somewhere with a less brutal winter. In particular, I could see myself in Seattle, NYC, or DC. But while I'm on the road trip, I'm eager to take a look at cities that seem like they could be good fits on paper but I've never visited, places like Raleigh-Durham, Austin, and LA. Meanwhile, the pull of home is strong, so I might end up back in Chicago or Pittsburgh after all. I have a few months to explore and assess my options.

3: Where Are You Working Next?

This will play a big role in determining my answer to question 2. I'm open to locating most anywhere for a good opportunity.

I'm going to give an honest stab at prepping for tech interviews at some of the massive tech companies. Meanwhile, I want to do my homework on small to midsize places to make sure I'm not just looking at places with global brand recognition. As I hit on in question 1, it all comes down to where I can plug into a great engineering team that I can learn from and become a strong contributor to. I'm still feeling out how I'll weigh the tradeoff of valuing the established processes of a big firm vs. the freedom from bureaucracy of a startup or mid-sized firm.

This question is the fuzziest for me. I have a lot of homework to do on figuring out what opportunities are out there and by what metrics I'll judge how good a fit I am for a team.