Sunday, August 27, 2017

Going Too Many Extra Miles

And this is exactly the problem.

Hi everyone, sorry for the lack of posts, been two years, etc. Let's just assume I won't be updating this blog regularly so all of us will just be pleasantly surprised when I do. Today's topic involves "going the extra mile", which is code for someone going above and beyond what they're asked to do. Normally, it's a good thing, but I'd like to argue today that too much of it can be detrimental to both the person doing it and the game team as a whole, using two examples from my own experience.

I was bored one Sunday while I was working on City of Heroes. I came up with a challenge for myself - could I create a piece of content for the game from start to potentially shippable in one day? I went in and worked a full 8 hour day and got the content in. I tested it myself and was proud, I had made something completely from scratch that, with maybe a little more QA testing, could easily be shipped in the next release!

A few years later, I had been at Cryptic for a while and we were crunching. I didn't have too much to do during crunch, so I decided to work on a personal project. I created a template for setting up a puzzle that we hadn't done before. It took a while to do and test, but in the end I was able to get it working. I sent an e-mail out to the other designers saying I had taken care of this, and felt comfortable thinking I had added a new dimension for puzzles to do in the game.

What were the results of these two examples?

Complete with gravely voice.

In the City of Heroes example, I created surprise work for QA and the other designers with my work. Whoever was working on rewards now had to figure out how my content fit into the release plan. What I did was never scheduled and never asked for, but now it was nearly done. There were other parts of the release that could've used a hand, other parts of the game that could've been improved, but instead I went off on my own and did a thing that I thought was cool. We still released it, but it cost several people on the team, including myself, more hours than they thought they would need to get this next release out the door.

On top of that, I started to set a dangerous precedent for the rest of design. I went in and worked on brand new content for the game on a Sunday (a Sunday! A day of rest, for shame on me as a Catholic). Was this the new bar for everyone else? Did we need to do this from now on to maintain a level of content released in each patch? Or was it going to be a thing where the studio just relied on Sean to Go The Extra Mile and have me just always work extra hours? Lucky for me, the producers at Paragon did not take advantage of this and instead encouraged me to not do this sort of thing again.

In the Cryptic example, nobody really needed or wanted my puzzle. There was a reason why the team was crunching: work needed to get done with time the normal week didn't have. Instead of going to a producer or my lead and saying, "what can I do to help? I'm pretty light on work right now," I decided to do my own thing because I wanted to show off how much I knew the engine. In that time, I could've been peer reviewing other people's content, helping someone bash their bugs, or anything else that a lead or producer could think of to help the team with the next release.

"Going the Extra Mile" in the Cryptic example would've been asking people where my help could've been used. It's always a relief when someone can take care of your bugs so you can focus on other things. It's part of being a team working towards one goal instead of a team of solo designers doing their own thing.

With our powers combined, we create new patches.

However, going the extra mile too much can also lead to bad things. What I did on City of Heroes was me showing off, not working with the rest of the team. But it could just as easily turned into something even worse. Someone willing to always go the extra mile, whether its come in on weekends, do "surprise" work at the last minute, etc., can create a dangerous precedent. Does the content scheduled to be released begin to count on said person going the extra mile? They're always doing it anyway, so why not assume they'll keep doing it and load them up on things? At this point, there's no more extra mile, you're just doing your job and working your hours, which is more than the amount of hours everyone else is working.

Consistently going the extra mile works fine in the short-term, but can be devastating in the long-term. What happens when that one person leaves the team? How do people who can't work more than 40 hours compare to someone who is always coming on on weekends or staying late at night? The goal should be how we can get better and more efficient with our 40 hour work week, not adding more hours to it.

We should celebrate when someone goes the extra mile to lend a hand. But when that same person is always working more hours to help out the team, then something needs fixing and we shouldn't be celebrating. It's a sign that something is wrong with the process if it keeps happening.  The hardest part of this is standing up and saying, "no, I don't have time for that.". Short-term, you're the bad guy for not putting in content for the game. Long-term, you're helping set a healthy precedent for the team. Or learning the meaning of the phrase, "unemployment benefits". At which point, I'm sorry and I never wrote this blog in the first place. Stop e-mailing me saying it's my fault why your children are hungry.

This is all just, like, my opinion, man.