I started working at 15, when I took a job as a pizza cook. Over the next seven years, I moved up the ranks, to a driver, shift manager, and then as part of the “new store opening team.” The franchise was growing, and we needed to help new franchisees open their new stores. I’d travel to where the new store was a week before they would open, help train the new staff, and then work their opening weekend. It was really fulfilling work; if pizza paid as well as tech, I’d seriously consider doing it forever.
One time, somewhere in Maryland, I got a bit ill. It wasn’t a good idea for me to work the rest of the week, but the company’s top brass would usually visit to cut the ribbon on the store. It was about a four hour drive back to home, and our COO graciously agreed to let me come back to the ’burgh with him, so I could recover at home. On the drive, I asked him what he did before working here, and the answer really surprised me. “Oh, I was the CEO of American Eagle. I grew them from 20 locations to 200, and then decided to move on.” To a kid from the suburbs, being in charge of one of the most popular clothing brands among my peers seemed like a great gig. Why’d he quit? The answer is something that’s really stuck with me; this happened about fifteen years ago. What he told me was this: at each stage of a company’s growth, they have different needs. Those needs generally require different skills. What he enjoyed, and what he had the skills to do, was to take a tiny company and make it medium sized. Once a company was at that stage of growth, he was less interested and less good at taking them from there. And that was what he was trying to do for our pizza chain.
I’ve mostly worked at small companies. I did a startup, then consulted, then worked for a series of companies with five to 15 people. I quit one of those jobs when I found Rust. What I saw in Rust was something that the world really needed. And I wanted to help it get there. Beyond that, the only real way to get a job working on Rust was to work at Mozilla. And independently of Rust, that was something I’m really excited about.
Here’s a poster on my wall:
I’ve been using Firefox before it was called Firefox. This poster is of a two-page ad that Mozilla took out in the New York Times to announce Firefox 1.0. I’ve long believed in Mozilla’s mission. This was an exciting opportunity!
Fast forward a few years. Rust has been growing, we’re doing great things. I love my team. But every time that this means interacting with Mozilla more broadly, I end up being frustrated. I could say a lot of things here, but I won’t get into the details. What’s really important is this: I’m not proud to be a Mozillian anymore. A variety of incidents contributed to this, but at the end of the day, it’s what’s true. Furthermore, I don’t have any personal opportunity at Mozilla; I recently discovered I’m the lowest-paid person on my team, and Mozilla doesn’t pay particularly well in the first place. In order to have any kind of career growth, I would have to not do the work that aligns with my skills, and what I’m doing now is really how I can have the most impact on Rust moving forward.
I don’t believe that Mozilla’s direction has any chance of changing; when I’ve tried to express my frustrations, I’ve only gotten disciplined. Mozilla is not interested in hearing what I have to say. And that’s fine, but when I take a step back and think about things, that means it’s time to go, for both my sake and Mozilla’s. So I’ve just put in my two weeks’ notice.
So what’s next? Well, the first thing is that I don’t plan to stop working on Rust. How much I’ll be able to depends on what’s next, but that’s the great part about open source; I can continue to help the thing I love, even if it might not be full-time anymore.
I’ve also been enamored with another technology recently: WebAssembly. 2019 is going to be a huge year for WebAssembly, even if many people don’t know it yet, and may not see the effects until 2020. Once again, I find myself seeing something that the world needs, and I think I have the skills to help make that happen. Unlike with Rust, I don’t think that WebAssembly needs my help to actually work on it itself; I think it’s not yet found its killer application. I’d like to help find out what that is, and help both wasm and that application grow.
There’s something similar in Google’s Fuchsia. I’ve worked with the web for a long time, but doing Rust for the last few years, I’ve also really enjoyed systems-level work. Fuchsia is very interesting and a bit of an enigma, but I can’t wait to see how it turns out. They use a lot of Rust, and plan to use more. I’m not really a kernel hacker, and I’m not sure that Fuchsia is far enough along to really need my skills, but it also really piques my interest.
Additionally, I’m always open to other things. Before Rust, I worked at Balanced Payments, which was one of my favorite jobs I’ve ever had. I would have never thought I’d want to work at a payments company, but by being open to it, I found an awesome role, with fantastic co-workers. Maybe what I do next will be something completely different!
In terms of the actual work I would like to do, I don’t think a traditional engineering role really suits me. Don’t get me wrong, I love to write some code, but I don’t think that those kinds of roles really play to my unique strengths. What I really love to do is teaching, evangelizing, and growing something. I’ve done it with Rust, and I can do it again. I could see several roles or hybrid ones here, with titles like “developer evangelist,” “product manager”, or possibly even “VP of Growth.” I want something that challenges me, and where I can grow my career.
So if you’re:
or something completely different that you think I’d be psyched about, please email me and let’s see where things go!