Today is my last day as an employee of Stack Exchange, Inc. I'm extremely excited to be starting my new job as Community Product & Operations Manager of College Confidential. It's a fantastic opportunity (and terrifying challenge) for me. Today, however, I'm going to talk about why I left what I long considered my dream job.
Last summer I took a four-week sabbatical/roadtrip to visit family in Washington and Idaho.1 It was an extended vacation, which gave me plenty of opportunities to consider whether the job was still satisfying. When I started up work again in August, I felt rejuvenated and eager work at Stack Overflow for another 6 years. I was handed an amazing new project that promised to keep me busy and help the company grow revenue. The Community Management team began reporting to Mary Ferguson, the VP of Engineering, which meant we had a closer relationship to the people building out new features. Our product manager, Meg Risdal, was directing us to a more compelling product after years of stagnation. Our data scientist, Julia Silge, was discovering amazing things about how people behave on our platform that helped us make decisions based on data rather than intuition. I felt pretty confident about our future.
Sometimes perspective changes rapidly. In September and October, a series of events demonstrated that leadership within the company neither understood community management nor was willing to learn. In retrospect, that's likely been the case for years, but the community team has traditionally been given discretion when it comes to community relations. The double-edged sword of attention meant more resources have been going to community-related projects, but also leadership has asserted more control. Unfortunately, their decisions repeatedly violated my standards for healthy community management. By November I was actively looking for a new job.
To be clear, I've led a charmed life. Jobs, including the one I start next week, have just been handed to me. I've had every advantage, including being a white man raised as a US citizen in a solidly middle-class family. Leaving a company on principle is a rare luxury. There's very little chance I'd have left if I didn't have something else lined up. This isn't exactly a protest resignation. I don't need a GoFundMe page.
Stack Overflow still boasts a compelling brand and excellent financial prospects. There's no particular reason it won't become a dominant force in the tech industry. I'm hanging onto my stock options whether the company goes public or not. Leadership will sort out its community relations one way or another. The developers, designers, researchers, data scientists, product managers and (especially) community managers who remain have the expertise and dedication to make that happen.
Online communities at the scale of Stack Overflow have a relatively short history. We don't really know how they work except by broken analogy.2 Management of such communities hasn't exactly proceeded to the sophistication of a science. It's entirely possible my instincts and judgments about how to do it were wrong. Perhaps Stack Overflow has needed a change in direction and I have been, perhaps, an unnecessary roadblock. Sometimes old ways must make way for new. But beware Chesterton's Fence.
Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.—Conway's Law
Stack Overflow was designed by a small team of programmers who created a structure that encouraged transparency and agency. This level of autonomy also allows a team of programmers separated by distance and timezones to effectively work together. If a developer sees a problem, they can diagnose and fix it without waiting for someone else to come into the office. Meanwhile, very few sites gives active users the autonomy to edit and delete other people's content. A dedicated user of Stack Exchange/Overflow can quickly fix typos, broken links and buggy code samples without needing the author to approve. Stack Overflow matched the organization that created it.
Over time, the company has added layers of management, stricter controls and lost some of its remote-first culture.3 This isn't unexpected, of course. It might even be for the best in the long run. What hurts right now is that the structure of the community is at odds with the structure of the company. Unfortunately, the stance of leadership seems to be that the community is resistant to necessary changes and is, therefore, more a liability than a strength. I'm hopeful the company will rediscover the joy of working with rather than against its community.
As of today, I'm no longer straddling the line between the company and the community. It is no longer my responsibility to mediate the drama. My participation on Stack Exchange can once again be motivated by intrinsic rewards. I will treasure my time as a Stack Overflow employee, but I have to acknowledge there is more relief than regret to stepping into a new job.
I expect the next few months will mark a renaissance for this blog. So much of my writing in the last few months has been entirely internal to the company. Much of what I've had left in me to write has not been suitable for public consumption. I expect that as I start learning about a new community, I'll find the need to write about the one I spent the previous decade thinking so much about. And I'll also have some new lessons that I'll need to think about out loud.
Easily the best thing about working for Stack Exchange has been the amazing people I got to know. Perhaps you think it trite to say, but it's absolutely the truth. Whatever you might think of the company, I have never met a more talented and enjoyable group of people. It has been a real joy and I will miss interacting with them all. Easily the worst thing about leaving is worrying their work will be that much harder with one less hand to do it.
My plan was to write a book along the way, but I only have a handful of partial chapters to show for it. ↩
Send feedback by creating a GitHub issue.