Scaling Code Mountain

Wind whistles through a tiny crack near my head. The shriek jars my concentration and interrupts the rhythmic crunch of my boots in the snow. My reverie shattered, I scan the surroundings. I’m on an ever narrowing path with a sheer drop to the left, and the still very large base of Code Mountain to the right. It’s cold and shadowy, it has been for days. I recognize the landscape components, stones and snow, rocks and stunted vegetation, but it’s arranged oddly — simultaneously familiar and foreign. Sighing as I swing my pack to the ground, I fish around for a flare. The shot arcs into the sky then immediately fizzles out. Was it enough to penetrate the gloom? As I search my pack for another, a tiny orange light blinks into existence on the horizon and accelerates rapidly toward me.

The light arrives in seconds and skids to a halt about ten feet above me. It hovers effortlessly, like a sentient disco ball, casting a warm glow across the nearby terrain. It’s illumination reveals both a path and cave that were invisible before. Once the light recognizes its job is done, it zips back to the horizon to attend to its over-the-horizon business. As it fades away, I feel rejuvenated by the newly discovered opportunities. Path or cave? Are you kidding me, I have to check out that cave! After a couple shakes my flashlight is as bright as it’s going to get, so I take a deep breath and inch across the threshold.

Without my glove on I can really feel the details of the cave wall. It’s not as cold as one would expect, and it has a complex pattern etched in its surface. The flashlight is proving worthless so I return it to my pack and take off my other glove. Slowly I sidestep along the mural of grooves, following the crevices with my fingers. The cave is bigger than I estimated and it takes a while to work through the whole design. As I circle back to the entrance I have a vague mental picture of what I just found, but I will need to revisit this cave when I have more time to study it. I retrieve a small hammer from my pack and pound a bright orange flag into the rock outside the opening before moving on. It reads:

/* TODO: reread for clarity */

Four flags later the amount of new information swirling through my head threatens to overwhelm me. I resist the urge to send up another flare. Instead I decide to make camp for a bit and review my notes. As I battle the wind to flip notebook pages, I hear labored breathing behind me. Turning around I find myself face to face with a panting St. Bernard. As soon as I remove his collar he turns and slowly trots away, fading into the sleet in seconds. Sipping on the near scalding coffee from the dog’s tiny barrel, I ponder my next step. The hot brew starts to permeate my core, and I can feel the caffeine’s effects start to kick in. With a final gulp I repack my gear, adjust my pack, and resume the climb.

I take one glance back down the trail. The weather below me is breaking up, and the path behind me is much less foreboding than when I first traversed it. There is even a shaft or two of sunlight puncturing the dense freezing mist. I can see my orange flags dotting the landscape like sprinkles on a giant frosted cupcake and it lifts my spirits. Mmmmm cupcakes. With a renewed determination to reach the top, I pull my pack straps tighter and turn to face the challenges ahead.

At WordPress, Happiness is Automattic

On the first of May, I started a new job at Automattic, the company behind WordPress.com. I was hired as a “Code Wrangler,” but to date I have not written a lick of code. This is because for the first three weeks new employees must participate in a customer support rotation. I know what you are thinking: “Let the software engineers communicate directly with customers? I saw Office Space, so I know that’s a bad idea!” or maybe “Bummer, customer service is a thankless soul-sucking quagmire of loathsomeness.” Surprisingly, neither one of these normally valid assumptions is true in this case. So what makes working at Automattic so special that software engineers can enjoy communicating directly with users and customer service ends up being rewarding and fun? Quite a few things actually.

The customer service team is known as the “Happiness Team,” and its members are “Happiness Engineers.” When I first heard this I thought, “Cute, a little silly, but no sillier than my title of Code Wrangler.” Now that I have worked on this team for a while, I have come to realize it is anything but silly or cute; in fact, it’s quite brilliant. The impact of having this title is subtle but powerful. The Happiness Engineers truly do an incredible job helping WordPress users with every problem they report, even ones not related to WordPress. There is an infectious helpfulness that permeates the interaction between team members that can best be described as the exact opposite of the “not my problem” attitude. Your problem is their problem and they want to help resolve it. For my part, it has become a personal challenge to find the most disgruntled user and try to find a way to inject some happiness into their life. When you slide the keyboard back at the end of the day, it’s very satisfying to know you did your best to help people with their problems, even trivial ones.

During my training on how to handle user issues we walked through a few real-life problems and talked about how to approach them. One in particular had two possible responses: one in which we suggested a solution that would also generate a revenue stream for Automattic, and one that did not. I took this opportunity to ask the trainer how important customer retention and revenue generation was to the Happiness Team. His answer was as refreshing as it was surprising. He told me to always judge each case independently and recommend a solution that best matches the user’s needs, no matter what the outcome to our bottom line. This really captures the essence of the Happiness Team’s approach to customer service, and it is reflected in the conversations I have with other engineers every day. To date I have not once heard an employee disrespect or disparage a user, even in private, even when their question is inane and deserving of ridicule. By stripping away the need to follow a script or try to up-sell someone, Automattic has made it possible for its Happiness Team to address users not as customers, but as people. The effect of this is striking, both on the engineers and those seeking assistance.

When you combine the surprisingly powerful psychology of the Happiness Engineer title, the talented personalities on the team, and a culture of courtesy and respect, you end up with something very special. Automattic has done just this, and it really has been an honor to participate. At the time of this writing I have two more days of support rotation left. In all honesty when I started I was not looking forward to these first three weeks. I have a genuine talent for pissing people off, so trying to make people happy has been an interesting learning experience. Turns out I’m having so much fun, I’m going to be a bit sad to move on. Just a bit though. If Automattic can make it such that even I enjoy customer service, who knows what’s around the next bend.