I've fired myself five times at Zapier: from my original role as a frontend engineer, from my role running our early platform, as a design manager, as a product manager, and most recently as Chief Product Officer.
I learned to code to build things growing up (graphing calculator games, AIM profiles, among other projects) and had a lot of fun with it. When deciding my focus for college, I was afraid I'd lose interest in programming with a formal, rigid CS education and decided to pursue mechanical engineering as a way to stretch myself. Despite this decision, I still found myself coding for side projects and even found a way to bring coding into my curriculum which led to a research job at the university.
Half way through college and I had this torn identity and wasn't sure what I'd do after I graduated. I sent out ten summer internship applications to engineering firms and got rejected by everyone. I remember hating the feeling of needing permission and that feeling led to me focus on software freelancing and startups.
I dropped out of grad school to help Wade and Bryan (who I first met around college) start Zapier in 2011. I'd never had a full time job and it seemed natural and obvious that my co-founders would take on CEO and CTO roles. I think my lack of professional identity contributed to this. While Wade focussed on marketing and support, Bryan was building the first backend for Zapier. We knew we needed a good user interface to enable non-technical people to connect APIs together, so that's what I focussed on during the first couple years. It was easy to be flexible about role on a small team.
But as we began to grow the team I felt an increasing need to justify and define my purpose. The first time I told the team I wasn't going to write code for a project I kicked off, one of our early engineers asked me “So if you're not going to code, what are you going to do?” – I barely had a cohesive answer. I knew I was filling a lot of holes in the company but I thought my explanation was unfulfilling.
We held a firm “don't hire until it hurts” mentality in the early days of Zapier. The up (and down) side of being a technical generalist is you can do every role so every problem looks like a hole you can fill, and I did.
My original day to day work was mostly frontend engineering with some UX design work here and there. We launched Zapier's developer platform in 2012 which also played a big role in the user experience. The quality of integrations determined the quality of the UX for the end user. So I added reviewing and launching apps to my role. As Zapier's userbase grew in 2013 and 2014 I recall thinking we needed a better way to decide what we were spending engineering time on. Zapier's model looks like more like a consumer business than an enterprise business and we had outgrown the ability to make directional decisions from support anecdotes. So I started writing SQL jobs and wrangling spreadsheets to give us some insight into our user's behavior and our early funnel metrics.
In each instance, I defined a new role in the company by doing it first. As we grew, I managed the people we hired to do each role. And eventually replaced myself as the manager, too. With several managers now reporting to me, I decided to define my role as Chief Product Officer in 2015.
While in the CPO role from 2015-2019 I scaled the team from one to seven product teams and grew the supporting cast in product management, UX research, data analytics, and product design to accomplish this. And it felt great for a couple years – I had an identity I could explain!
But over the years my calendar filled up and my CPO todo list grew. I knew the things on them were important for scaling Zapier but I was losing interest in them and the results showed. I couldn't escape my earlier pattern of spotting holes and trying to fill them. I was drawn to spend my free time and nights and weekends working on other problems around the org and building software for those problems. Zapier was hiring the rest of our exec team around this time, too. I interviewed with around fifty experienced VP and C-level folks and I started to imagine what someone of similar caliber could look like in my CPO role.
I eventually came to the conclusion that I had over stayed the CPO role and decided to hire someone to replace me. It took me a year to decide this. It took us another full year to hire a CPO to replace me. This was a rough time for me personally. In part because my identity was attached to the role. Two realizations helped me through: I could embrace the original hole filler role and I still had ideas.
One specific area, or hole, I thought a lot about as CPO is repeat innovation. Zapier's flagship workflow automation product is used by millions – but if we're going to democratize automation for everyone we have to expand our product line to make other forms of automation more accessible. And to do that we have to build the engine for repeating innovation. For the last six months I've been working on building a new team called Zapier Labs to do this.
Is my latest role, Head of Labs, my last? Or will there be future new holes to fill? I'm not sure but I have learned to be less attached to an identity. I could have saved a lot of time and pain if I had realized that hole filling can be a role in itself.
EDIT – PS. Labs is hiring! Currently looking for a UX engineer and founder-type folks who want to build automation and productivity tools.
If you'd like to see more posts like this one, follow me on Twitter!