This should be a hard blog post to write–after all, it’s the one where I openly admit I had an emotional breakdown and saw a mental health professional–but it’s actually easy. And it’s easy because it has a good ending: facing long odds and a frustrating situation, I ended up turning everything around and getting a place where I love my job and I’m a happy person again.

But this is not one of those times where the journey was the fun part. No, I’d really preferred to have skipped the journey entirely.

So this is the post I wish I’d read myself back when I decided to work remotely. If you don’t want to read the whole thing, I can even summarize it for you, right here: different people like different kinds of work environments; “working remotely” doesn’t have to mean “working from home”; and if you’re going to work remotely, you should find the work environment that’s the right fit for you.

I demand infinite cake

A bit over a year ago, I moved out of New York City. It’d been great for a decade, and I had tons of friends, but I hit a point where it was draining the life force out of me. Simple pleasures, like going for a hike or joining friends for a potluck dinner, ended up these huge logistics nightmares that took so much effort they stopped being enjoyable. Knowing you theoretically could see 209 different Broadway shows stops being exciting when simply bringing a turkey to your friends four miles away reliably turns into a three-hour hell of cramped subways, traffic jams, or The Hunt for the Mythical Available Taxi. Meanwhile, as my spouse and I thought more and more of having kids, the reality of just how much raising a child in NYC costs was something we felt we couldn’t ignore anymore.

This all posed a bit of a problem: I happen to enjoy making money; I do this best by working in tech; and the two hottest markets for that are New York City, which I wanted to leave, and the Bay Area, which is arguably worse. Where we wanted to move was the Raleigh/Durham/Chapel Hill area of North Carolina, known as the Research Triangle, but while this area has has tons of tech jobs, it doesn’t have some of the companies where I most wanted to work.

A decade ago, I would’ve had to pick which I cared more about. We’d either have stayed and dealt with NYC, or we’d have moved here anyway, and I’d have taken a job at one of the many great startups around here. But this was 2015, and there was a great way get everything I wanted without compromising on anything: I could leave management, go back to being a developer, and join the hoards of programmers who worked remotely. I had quite a few friends who had taken remote dev jobs and were having a blast, and it’d let me move wherever I wanted and still work for whomever I wanted. So, almost before I knew it, I left my job working on-site as a manager in NYC, and began working remotely as a developer for Khan Academy, a company I’d wanted to work at for literally years.

Which is how I ended up having an emotional breakdown this past February.

The sun, the moon, and the stars

That’s not how it was supposed to work. Working remotely is supposed to be the best thing since sliced bread. If you listen to people like Jason Fried in Remote, it’s basically a cure-all for everything remotely wrong in modern office culture. Modern offices are noisy and chaotic; your home office will be serene and peaceful. Modern offices are plagued with interruptions; your home office allows you to ignore the outside world and focus narrowly on code. Your commute need no longer bookmark your day, your coworkers’ illnesses need no longer presage your own, and you can even trivially work outside in an idyllic park surrounded by birds, nature, and psychotic hungry face-eating squirrels, if the fancy strikes. Beyond these material benefits, a remote-friendly office has to change its work process in at least one key way that gives you a massive ancillary benefit: it must adopt asynchronous communication as the law of the land, which in turn means fewer meetings and a much easier time scheduling activities. Want to see your kids at a play? Want to ditch the play but go to a theme park at the same time slot? Want to check in with Nana at 2pm because it’s about time you played at least someone in Overwatch who’s at your skill level? Just work at a remote-friendly company, and all this can be yours.

So when I began my remote life, I had nothing but the highest expectations. And, to be honest, they were largely initially met. I not only got my serene and quiet office; it came with some great new features, like the ability to make meals with long cooking times, or to customize my office exactly how I wanted it, even if that meant blasting 90s punk rock out my speakers at high volume. The flexible schedule was also indeed nice, and the mixture of that, plus the relative paucity of meetings, did initially drive up my developer productivity higher than it had been for years. It really did seem to be living up to the hype.

But then the cracks started to appear.

The dark side of remote

One of the first warning signs was that my “off days” began to get more common. Look: all developers have off days. I’ve even talked to developers from 60s and 70s who used to get them, and they didn’t get excuses like “a white nationalist egg avatar tweeted ‘ideas’ at me” to blame it on. But I was used to having, at most, a couple of off days a month. Suddenly, I was getting one to two per week. My colleagues didn’t seem to notice, but I sure as hell did, and I had no idea what to do about it.

Then I gradually stopped taking advantage of the benefits remote work was supposed to provide. At the beginning, I’d routinely go for walks or hit the gym midday, I’d echo an on-site Khan Academy tradition and make fresh loaves of bread, I’d take breaks to meditate. I’d even occasionally work from nearby parks, face-eating squirrels be damned. But, gradually, that stopped, eventually hitting a point where, more often than not, I would go multiple days of barely leaving my apartment. I created an off-color dent in the rug in front of my computer because I was moving so little. It was seriously that bad.

Partly causing this, and partly a result of it, my already limited new social sphere began to shrink. I quit going to meetups. I stopped attending workshops. It became entirely possible for me to have no meaningful in-person interaction with anyone other than my spouse for days at a time.

Things finally came to a head one February evening when I had an emotional breakdown. I wrapped up a completely normal and uneventful day at work, did my fifteen foot commute from my office to my living room, and promptly found myself vomiting from stress, saying how much I hated–truly hated–my job, and crying as I realized how unhappy I was with my new life.

About those workplace interruptions

I calmed down, took a sick day, scheduled a therapist, and began trying to figure out what the hell was going on. I used to love being a developer, and working remotely was supposed to be the bee’s knees for that. Yet here I was, miserable. Many close friends of mine talked about how much their lives had improved since they began working from home, yet mine was falling apart. Clearly, the problem was me.

“Ah ha!", I hear you say, because you have an Amazon Echo in your home. “This is the part where you say, ‘But lo, it was not me!'"

Wrong. It really was me. The trick is to recognize that it wasn’t something wrong with me. It was just that I hadn’t been honest about who I was, and so I’d set myself up in a situation that was really, really caustic for my mental health.

A lot of people tend to regard “introvert” and “extrovert” as binary options, but the reality is that it’s actually a spectrum. Some people do lean heavily towards one end or the other, but many people have at least some aspects of both. For example, I personally recharge by spending time by myself, and I genuinely need “me time” to be a happy person, both of which are traditionally thought of as introvert tendencies. But I’ve also always been very social. That’s in fact why, while I do really enjoy software development, I’ve always been drawn a lot to the interpersonal side of the software process, like being a project lead or a manager: those roles still leverage a lot of my left-brain analytical muscles, but they also provide lots of social opportunities. This is also probably why I enjoy working in open offices: yeah, they’re honestly pretty awful to work in when I really need to be heads-down trying to fix a bug, but they also encourage a very collaborative environment that I’ve always loved when I’m in the early stages of a project.

Working from home might genuinely be the ideal environment for those closest to the introvert end of the spectrum, and I think those are the people who form angelic choirs of blog posts asking if you have met their lord and savior, the Fortress of Infinite Solitude, Home Office Edition. For them, the quiet work environment makes their jobs dramatically more enjoyable. But for me, it was the opposite: I’d gone from management (high social interaction) to software development (lower social interaction), and from working in an office (hundreds of people) to working from home (two cats), and expected that this would all be fine.

But of course it wasn’t fine. And guess what? There are tons of people out there for whom it wouldn’t have been fine. And if you’re at a similar place to me on the spectrum–maybe a developer who ends up gravitating to positions that involve a lot of interaction with the product or sales teams, or one who really enjoys doing lots of mentorship even though it slows you down–it probably won’t be fine for you, either. In fact, like me, you may find yourself being utterly miserable at a job that by all rights ought to be your one true calling.

But good news! Introversion and extroversion are a spectrum, and so ideal working environments are also a spectrum. In my case, while I may need less social time than some, I emphatically do need daily socializing time, and that led me to what ended up being the perfect solution for me: coworking.

The social benefits of coworking

When I first figured out what was really going on, I felt trapped. Working remote was awful for me, so I needed to stop, but that in turn meant leaving a job I knew I’d otherwise love, and that I’d wanted for a long time. So that stank. Thankfully, I’m annoyingly stubborn, so, rather than give up, I decided to reëvaluate something I’d immediately discounted when we initially moved down: getting an office.

On the surface, getting an office didn’t make any sense, which was a big part of why I rejected it. I don’t have clients, so I didn’t need an office for my professional image, and deliberately undoing some of the benefits of remote work (regaining a commute, losing workspace flexibility, avoiding interruptions) while not reaping the benefits (you’re not gonna suddenly have a spontaneous hallway discussion with coworkers about that project you’ve all been working on when your coworkers are located in another castle) seemed pretty ridiculous.

But when viewed through the lens of what I’d been suffering from, coworking–or at least, the right kind of coworking–might make a ton of sense, I realized. In particular, if I could find one that was both a good work environment, and also had a real sense of community, then I might find a way to turn things around and end up in a good place.

The bad news is that many coworking spaces emphatically do not fit this bill. It’s not that they’re bad; they’re just optimized for other types of people with different needs than I’ve got. For example, one of the first coworking spaces I looked at had food trucks (good) and an decent community (good), but its common area was insanely noisy (bad), and the private offices they provided to counterbalance that had no windows (very bad), weren’t near the communal space (really bad), were ridiculously expensive (tax-deductible), and could only be accessed by bribing the bridge troll with a fish (gross). If you need coworking primarily to get away from a distracting or noisy home environment, that might actually all be perfect, but it would’ve been the exact opposite of what I personally needed. Another I looked at was great…but would’ve easily resulted in an hour-long communte by car, which I rapidly determined was one of the few ways to improve upon a hellish New York commute.

I ended up lucking out. Right about when I was thinking I should give up, Loading Dock, with explicit goals of both having a community and being socially active (which gave it a strong alignment with Khan Academy’s culture), opened up very close to me, and to cut a long story short, it’s ended up turning my remote gig at Khan Academy into one of the best jobs I’ve ever had. And because of that, it’s improved my general mood, decreased my background stress level, and generally turned my move to North Carolina from something I regretted into something I’m loving.

Several sizes fit most

The thing with all of this is that it was the right move for me, and while I think it’d probably be the right move for a lot of people, I don’t think it’s the right move for everyone. Working situations are not a one-size-fits-all kind of thing, and I think the tech community can be surprisingly hostile to anything that isn’t a one-size-fits-all solution. When we code, we’re encouraged to find the One True Solution™, and I think that can make us overly biased to believe that when we’ve found the best solution for us–whether we’re talking Vim v. Emacs, C# v. Java, OpenBSD v. an insecure OS, etc.–we’ve by extension found the best solution for everyone. In the case of working remotely, I think those who hated traditional office environments and then found working from home to be the amazing for them concluded that that was the One True Solution™ for happy workers. But the reality is that neither working from home, nor working from the modern open office, is best for everyone; there simply isn’t a single solution for work environments.

That’s the great thing about coworking. For the first time in my life, I got to pick my company and my job separately from my office. I missed that at first, and saw the options only as working on-site with a company or remote from my home. In my case, what I actually needed was something in between.

If you’re thinking of working remote, then think about what kind of working environment you’re happiest with before you take the job, and make sure you’ll have that environment available to you. Are you sad when a lot of your office is out sick, or are you relieved? Do you get uncomfortable when you’re in quiet environments for too long, or do you revel in them? Do you feel weirdly lonely when you’re in a noisy coffee shop, or do you feel energized? Use experiences like these to help you form an opinion of what will make you happiest, and then go search for an environment that’s close to what you’re looking for. It’ll help you avoid learning the lesson I did the hard way, and will instead let you enjoy your job from day one instead of day 200.