Nearly a quarter of my life
A friend at work recently announced he was leaving, and in his goodbye message, stated he'd been at Slack for 18.3% of his life. I did the math. This June, I'll hit 25%.
There have been many, many moments I’ve considered searching for greener pastures, particularly since December 2020.
First, there was the acquisition announcement.
It hit like a ton of bricks. How could the company I’d grown with for four years, the company I called home at least nine hours a day, five days a week, possibly stay the same after getting gobbled up by a behemoth of a company like Salesforce. (But really? Salesforce? Couldn’t they have found someone sexier to buy us?)
In those first few panicky post-announcement days, I tapped into my network to see where those I’d previously loved working with had landed. I scheduled a few calls, just to get a lay of the land. Nothing quite struck a chord.
Yes, yes, I was nervous about interviewing. I can’t deny that. I hadn’t interviewed in what felt like a century at this point, and last I had been interviewing, I’d received 36 rejections. (That is, if you count the companies that simply ghosted me.) Yes, I’d ultimately landed a job at Slack (which I still loved!) but could I put myself through the inevitable ego hit, in search for … what exactly?
That was the problem, wasn’t it. I didn’t know what I wanted– where I wanted to go– if I were to leave.
What kinds of problems did I want to solve? I was only 8 months into working on the problems I’d been itching to work on for years: scaling, load testing, performance, making sure we were delivering features that not only delighted our smaller customers, but our biggest ones as well. Our team hadn’t even begun to scratch the surface of the (rather ambitious) roadmap I’d devised. Leaving would have meant relinquishing that roadmap to my singular teammate, and surely, the team wouldn’t survive.
Did I want a more senior title? Maybe. Was I likely to get it? Probably not. I didn’t know it at the time, but I was just 6 months away from being promoted to Sr. Staff, a promotion I’d only just started to consider. I was ambitious, sure, but not delusional about landing a loftier title at a comparable company.
Did I want more responsibility? No. I honestly didn’t. At the time, I’d just gotten settled back east, and started up fertility treatments with a local practice. More than anything, I wanted to grow my family. I wanted more familial responsibility, not more pressure from my employer. In fact, on this front, many ex-Salesforce Slack folks were quite reassuring: Salesforce had best-in-the-business parental leave policies and top-notch fertility support. (Turns out, they were right.)
Was I nostalgic for Slack’s early days? Yes, of course. Couldn’t I want to recreate that experience somewhere else? Maybe.
There were so many magical aspects of working at Slack in 2016 and 2017. We all fit on one floor of an office building in SOMA. I could name every engineer, and the entire backend team fit into a medium-sized conference room. We shipped features fast. (I do mean that quite literally; we had a single DEPLOY button that shipped code to all production hosts within 30 seconds.) There was a sense of camaraderie, that we were all in it together, and that we were kicking ass. We were building a magical product that people loved. To quote the start-up cliché: we were building the rocket ship as we were flying it.
It wasn’t just the product, the explosive growth, or the size of the engineering team that made me yearn for that time: it was the specific people I’d had the lucky chance to work with; it was the specific pieces of the product I’d had a hand in crafting; it was being in my mid-twenties, living in San Francisco, and discovering that I was actually pretty darn good at my job.
I knew I couldn’t expect to recreate that elsewhere by simply starting somewhere new.
Was there a dream job out there for me? What about FAANG? No, not really. Slack was that dream job in 2016, and I didn’t have aspirations of working at a bigger, more prestigious company. To be frank, I had (and still have) very little interest in working for companies with ad-based revenue models, particularly following the 2016 election.
As a side note, since mid-2018, I had been thinking on and off about leaving the private sector for a year or two and going to work in civic tech. Holly Allen had recently come to Slack from the civic tech space and encouraged me to go out and meet some folks while they were in town for the Code for America Summit. The people I chatted with at the events surrounding the summit were so optimistic and mission-driven. Although I never made the jump (maybe one day!), I still keep tabs on the many scrappy, thoughtful engineers and designers I met that week.
Did I want to make more money? Sure, more money is nice, but it also wasn’t a motivating factor for me at the time. If perhaps I was feeling under-appreciated or under-compensated, I’d have sought more money elsewhere, but I wasn’t. Having had many honest conversations with coworkers about compensation, and, most importantly, access to anonymized survey data via an internal #talkpay effort, I had sufficient data to ascertain where I sat, and I was fine with it.
Then, there was my return from parental leave.
I asked myself many of the same questions when I jumped back in, six months after having my son in October 2021. My team’s manager had gone back to being an individual contributor, and half of my team had quit. I wrote about my experience in greater depth in this LeadDev article.
If you happen to be in that post-parental-leave brain fog, I highly recommend giving it a read. There’s tons of valuable advice from veteran parent friends and colleagues in there.
Stewart bid us farewell.
This was another huge blow. How could Slack be Slack without Stewart? Of course, this didn’t come as a surprise. Stewart had a steadfast vision for Slack, and for all his outspoken enthusiasm about combining forces with Salesforce, I struggled to see how he could be happy, never mind thrive, in the Benioff sphere of influence. Turns out, he couldn’t.
I was suspicious when they installed a new CEO from Salesforce, but our executive leadership team assured us that this was a tactical decision. Lidiane would help advocate for us within Salesforce. She’d gotten Cal’s stamp of approval, and, perhaps most importantly, Cal was sticking around.
For me, on the engineering side, Cal still being at the helm was what mattered most to me. It might seem myopic to primarily focus on the circumstances surrounding my personal experience at work, but as it turns out, it’s an important survival tactic for operating within a large company.
This is something I was still learning how to do. Before the acquisition, with every new hire, Slack was the largest company I’d ever worked for. I’d never had to learn how to selectively tune out the rumblings at the upper echelons, because our executive team was always speaking to us. They knew how to be authentic, empathetic, motivational leaders. Now, with Stewart’s departure, I couldn’t count on him to distill the corporate shenanigans into something meaningful. So, if I wanted to stay, I had no choice but to learn to tune out the noise, and focus on what was immediately in front of me.
Around this time, the tech industry was beginning to see wave after wave of layoffs. Salesforce had its own round of layoffs January 4th, just as Stewart was departing. I decided to stay. Not out of zeal for Slack, but out of fear of layoffs; I didn’t want to jump ship only to fall prey to “last one in, first one out”.
A friend reached out.
Last summer, six months after those frightful layoffs, and just three months following a rather lack-luster compensation cycle, a former Slack engineering leader who’d moved on pre-acquisition reached out. He was leading up the engineering org at a smaller, pre-IPO tech company that’d been attracting serious ex-Slack talent. He said the opportunity was big, and that the product was hitting all sorts of scaling problems he knew I’d solved at Slack.
At this point, I’d settled into a comfortable rhythm at work. The “micro”, as I’d started calling it, was pretty good. I had a fantastic manager who trusted me to decide on an ambitious (but achievable) vision and get it done. I had stellar teammates who were insightful, kind, and hugely productive. We all worked hard, logged off at a reasonable time, and took plenty of time off. Best of all, none of us held a pager.
It’d be a tough sell, but not an impossible one. Although I still had significant social capital, my scope of influence had decreased with the increasing size of the company. I could no longer tell you what most teams were working on at any given moment. (Seriously, our internal channels for highlighting released features: #released, #released-internal, and #released-minor were alight with delightfully surprising updates.) With a bigger engineering team came inevitably growing codebase, tech debt, and processes. Some days, it was definitely a drag.
The interview loop went well! There are some really lovely folks working at there, who are clearly very thoughtful about the work they’re doing. There’s no shortage of technical challenges to overcome as the company scales and acquires a bigger market share. But even with the very generous compensation package, it wasn’t quite enough to get me to jump ship.
I mulled over the decision for a few days. Ultimately, it came down to three things.
First comes my love of Slack, the tool. Part of why I love working at Slack is because we’re such avid users of it. It’s been years since I’ve shipped an actual product feature (I’m mostly working on developer tooling, and have been for over 4 years), but knowing that I’m contributing to building the tool that I love and spend most of my day using is a big deal.
Second comes the types of problems I want to be solving. Yes, there’s something satisfying about solving a problem you know how to solve. Being able to directly apply the knowledge and experience you’ve been accruing for years, without needing to agonize over the how, can make you feel really darn smart! Who doesn’t like to feel smart and capable? But in that moment, when I was weighing my options, it was clear that if I were to take the job, I’d be solving the same flavour of problems I’d solved at Slack. Whereas if I were to stay, I’d get to continue pushing the envelope. I had the autonomy to go solve all sorts of problems, all across the organization, at my own pace. No need to prove myself, just get something done.
Third, I’d be at the top of the engineering ladder. This company didn’t have any Principal engineers, and I’d be coming in as a Sr. Staff engineer. Broadly speaking, I’d be expected to have answers to most problems. For the first time in my career, there wouldn’t be anyone (within the individual contributor track) above me. Yes, it could have been the perfect stretch opportunity: the kind of situation that’s just uncomfortable enough that it forces you to grow just that much more deliberately. But I didn’t feel ready for it. Not just because I felt that there was yet so much to learn from my more senior peers at Slack, but because with a small child at home, it felt like a daunting time to take on a challenge of this size.
Ultimately, I turned it down. I stayed at Slack. But I kept the door open. Who knows, maybe the tides will change!
Now, Cal’s leaving.
I took a 7-week sabbatical at the end of 2023. From Thanksgiving through the second week of January, I spent some quality time with family and tackled a number of projects at home (new built-in closet, anyone?) On my fifth day back at work, Cal dropped a bomb: he’d be leaving Slack on March 1st.
To be quite candid, I openly sobbed in a huddle with 100 engineers when the news broke. Camera on. I was feeling a lot of feelings, and it was comforting to know that many of my peers were, too.
The news hit the old-timers (like me) much harder. Many of us had built relationships with Cal. He knew us personally. We knew firsthand the kind of impact he’d had shaping Slack’s engineering culture from day one. He was blunt; he was honest. He’d helped us navigate a tumultuous acquisition, and had kept us shielded from the corporate nonsense at the very top. There simply could never be another Cal.
I’d told a number of coworkers with each of the big shifts (acquisition, Stewart leaving, the announcement of our third CEO in just 13 months) that so long as Cal was still around, I’d stay. Now that his departure had been announced, what was I going to do?
Lots of ex-Slack folks have been reaching out since the announcement. I’ve had a dozen opportunities to catch up with friends and former teammates over the past few weeks, and it’s been a really heartwarming experience. Overwhelming gratitude has been the prevailing theme. Gratitude to have had the opportunity to work with such a talented, diverse group of folks over my relatively short career; gratitude to continue to have relationships with these people; gratitude that the “micro” of my day-to-day is still fulfilling.
Cal’s departure isn’t an instant death knell, but I’m definitely going to be keeping a more watchful eye on the inevitable shifts over the next few months. I’m cautiously optimistic that things will be alright (at least in the short term) with Parker as our new CTO.
On a personal note, I’m actively looking to grow my family this year. Usually, that’s not the best time to switch jobs. (At least not in the United States, where paid parental leave is a luxury, and varies greatly by employer.) But I’m keeping an open mind. If the right opportunity comes up, if shit hits the fan at Slack, if there are big (unfortunate) shifts to my micro environment, I won’t hesitate.
In the meantime, whenever the question pops back up– “Is it time to leave?– there’s a consistent refrain that answers. The grass isn’t always greener. Sometimes, the grass is pretty darn green right where you’re sitting. Sure, other patches of your yard might be in rougher shape, and, sometimes, that’s ok.