Left Hand Meet Right Hand
Advantages of Distributed Development and Work from Home
Marissa Meyers recently made headlines with the call for all Yahoo! employees to return to the office. She has dismissed studies of improved productivity when people are allowed to work from home and asserts, instead, that colocation of people is required for innovation. While Yahoo is in the unique position of a company trying to turn itself around, many will be watching to see whether this proves to be a successful move.
The game industry is not Yahoo!, however, and before we jump on board to adapt Ms. Meyers theories, we need to first examine the cost of having all developers in a single location to the industry as a whole.
Disadvantages of Colocating Personnel
Costs of Relocation
IGN reported 20 studios closed in 2012. In addition, it reports 35 incidents of smaller studio closures or significant lay-offs. Speaking from personal experience, I saw one RIF and one studio closing within a 1 year period resulting in 2 cross country moves within that same year. Psychologists list the stress of moving as the most significant stressor short of losing a loved one. It is not only disruptive for the employee, but for the entire family. In two-career homes, it leads to arguments over whose career takes precedent. Some careers are only available in limited geographic locations forcing the game developing spouse to stop developing games or forcing the spouse with limited geographic options to forgo their career. When children are involved, it removes them from their schools and friends. For high school students this can mean having to take extra courses and summer school since standards are local. For example, my son could not count ROTC as his PE requirement when moving to a school that did not have ROTC and would require an additional year of high school to meet that requirement alone.
Limited Talent Pool
Thousands of young people fresh out of school are trying to enter the game industry. However, with the Quality-of-Life issues rampant in the industry, we find a shrinking pool of experienced developers. People who start families begin to rethink 12/7 work weeks and leave the industry for a saner lifestyle. According to the most recent IGDA QOL Survey, 74.4% of respondents had less than 8 years of industry experience. The average age of developers was only 31.22 years and 76.9% of respondents have no children.
If you draw a correlation between the age of developers and their child-free status with the exodus of developers with greater than 7 years’ experience, the logical conclusion is that this industry needs to become friendlier to older developers with children. One way to grow the experienced developer pool of talent is to look beyond the confines of local studios. Experienced developers live in the all the major game hubs, but many are settled in those locations and experienced enough they don’t need to leave for a good job. So a studio seeking top talent will expand its talent pool for developers if relocation is not a requirement.
The Bottom Line
Next to hardware for server farms, salaries and benefits are the largest expense for a game studio. The more expensive the location of the studio, the higher salaries required. The difference for a developer in Denver and in San Francisco is 55%. So a $50K developer in Denver will cost $77,500 in San Francisco. And yet your game does not sell for 55% more in San Francisco than in Denver. It sells for exactly the same amount. From a simple bottom line perspective, it makes more sense to hire the developer in Denver.
Making Distributed Development Work
Communication Becomes Top Priority
I doubt anyone will argue that if two people need to collaborate, it is much easier if they are in the same room. But how many times in game development is collaboration limited to two people? Entire teams are collaborating. And while entire teams can be brought into a meeting in the same location, the dynamic instantly changes. There is more discussion. And there is more opportunity for communication failures. Here are some examples:
A meeting is called for 10 minutes from now. The entire team attends, except Bob, who is the only back-end developer on the team. Bob is at the dentist. They make a decision for a new interface. No one tells Bob. Bob continues working on the back-end based on previous assumptions. A month goes by before anyone discovers the problem and a month of development time is lost.
Carol and Alice meet in the hallway to discuss a problem with the controllers. They decide to tweak an algorithm to fix the problem. They don’t realize that the algorithm used for the controllers is also used for AI. When they check in the fix to the controllers, they break AI movement.
The art team is gathered around a monitor to view the latest models. Stan is in the back and can’t see the entire screen. The art director points out an area where there needs to be some work but Stan doesn’t see the entire piece and while he thinks he understands the direction he’s being asked to go, he’s not correct because he missed a critical element.
When the team is distributed across multiple locations and time zones, then how the team communicates becomes a top priority. No one can assume everyone is available for a meeting in 10 minutes; therefore any meeting has to go into the calendar where it would be obvious to everyone that Bob was at the dentist. The meeting would have been held when Bob was available.
Alice and Carol would not have been in the hallway, they’d have met in IRC chat where the entire team would be able to watch the conversation and the AI developer could have pointed out the problem at design time. And Stan would not be huddled around a monitor trying to see around others, but would have the screen he was supposed to be looking at shared on his computer so he can see it clearly.
None of the three meetings in the examples have a record of what has transpired. The tools used in distributed development in some cases automatically record the meeting and in others lend themselves to easy documentation. IRC automatically logs chats. In Skype meetings at Linden Lab there were usually side bars in chat along with the conversation in voice. This allowed everyone to more easily insert their opinions without interrupting and provided a chat log of what was being discussed. Screen shares can also be captured. All of this documentation becomes available to those at the meeting, to ensure everyone understood and also to those who could not attend so that they can quickly get up to speed on any changes. This is invaluable when bringing new people into a project.
Having the right tools does not solve problems with attitudes. While people all in the same office can also get into cliquish behavior, when teams are distributed as teams rather than as individuals an “us v them” mentality can easily slip into the culture. This kind of attitude requires management intervention and needs to be aggressively addressed. Team building exercises are critical. Video cameras to bring the people more directly into the room in meetings help, but so do meetings that are just for team building. And if you can meet in a virtual world as avatars that ads a uniquely wonderful touch, particularly when your boss wears a brown paper bag on his head or the CEO is a rocketship. My personal favorite will always be the bloody meat cleaver wielding tiny fairy with the bass voice of one of the rendering devs.
Work from Home
Studies have shown an increase in productivity when workers are allowed to work from home. One reason for this is how people view their time. When a person is in an office, they view all the time in the office as time worked. This includes gabbing with co-workers, playing ping-pong, mid-day power walks, etc. When people work from home, the only time they view themselves as working is time actually spent working. Breaks to do the dishes, take the dog for a walk, etc. are not considered work time.
Working from home also helps reduce the person's carbon footprint, unless they are the rare individual that commutes by bike or walks. For companies in urban areas such as Los Angeles, where programs to discourage individual commuting are in place, this improves the company's score card. Commuting can also take up to 3 hours of a person’s day. Those hours can be split between the developer’s personal life and the work with gains in each.
Working from home allows parents to be more involved in their families and less dependent on outside care takers. The result is less time spent making arrangement for the children while at work, less anxiety on the part of the parent, and a result in higher concentration and higher quality of work.
But what about Ms. Myers’ assertion that people need to be in the same office to innovate? As I know of no studies verifying or denying her hypothesis I will address it with questions about innovation rather than with data.
How much innovation is needed?
Does every single employee at a company need to innovate? Do you want your build system to be innovative or would you prefer a tried and true system that has been doing its job for 10 years. Do you want innovative accountants thinking outside the box on your tax returns? I contest the idea that everyone in the company needs to be innovative.
Do we have to be in the same room to innovate?
Often meetings where brain-storming and innovation take place are dominated by the same loud voices. When one or more members of a team are dominant, others are often quiet and their input gets lost in the noise. While this can also happen in on-line meetings, the ability to type text into a chat field during the meeting allows people who may not be as verbally assertive to still ensure their input makes it into the meeting without having to develop skills in interrupting others. And the record of the meeting allows review which can facilitate greater innovation.
Do we want to innovate for the sake of innovation?
Innovation is the hot new buzzword. But is innovation for its own sake necessarily desirable. Just because no one has ever made an FPS where bullets travel a player defined path rather than a physics defined trajectory does not mean that particular innovation will increase sales, provide a better experience or is in any way a good idea.
Benefits versus Risks
The risks for developers in a distributed model mostly fall on the shoulders of middle management as it requires more than just showing up at the office and delegating tasks. Managers have to be willing to work with their team based on work results alone. No more can a manager say “if I don’t see you working, you’re not working” (a fairly ridiculous assertion in a creative medium as dependent on inspiration as on hard work). The manger must actually look at and evaluate the work of the employees and this takes time.
In addition, since managers don’t casually pass their employees, often giving them the illusion they are aware of what that person is doing, in a distributed environment managers must actually schedule time to sit down with their direct reports. Having worked for 2.5 years at one studio before ever receiving feedback from my manager other than a yearly raise, the value of regular meetings with direct reports cannot be over-stated. Managers and direct reports need to communicate regularly. The processes necessary for a distributed team are those which would help all teams, but the distributed nature of the work requires those processes be in place and be followed.
The benefits to allowing work from home can also be found in talent retention. Better communication, autonomy over work environment, and being judged by the quality of your work and not arbitrary measures are all benefits that help talent remain satisfied with their position. And while all of these can happen in a single location, they can also be easily overlooked in such an environment. Distributed development, when it works, puts these things as top priorities and they become integrated into the corporate culture for the benefit of all.