为什么远程合作的游戏项目不好做(上篇):沟通是首要问题
发表于2017-11-14
文:顾煜
厂商开发大型游戏时,一个常见的问题是人力等资源不足。
任何项目在任何阶段都有可能抱怨人力不足,区别只在于有些项目声音响,有些项目声音轻。对于人类,婴儿哭声最能直击人心。但项目不同,项目越大,哭喊越会吸引注意,小项目没人care,就算挂了,明年的今天老板是不是记得给你烧纸还是一个问题。
人力、资源不足怎么办呢?996或是997的作用是有限的,大公司老板们拍脑门一想,另一个城市、国家或是星球上还有自己的工作室,那里的人们勤劳勇敢,智慧和美貌并重,不如两个团队合作一下吧,我们一起做一个AAA出来。
远程合作是一个大坑,坑底死尸累累。不是每个团队都能驾驭。在人力资源上,或许是一加一等于二,而团队协作上,绝对是一加一小于二。
大致来说,两个凑到一起的远程团队,在合作中,会碰到下述问题:
沟通信息不全面
精神上在一起是没有用的,要肉体上在一起。异地恋情失败的可能会更大,应该是大家的一个共识。相应的,异地项目也会给合作的团队带来不必要的困难。最基础的问题在于沟通,没有谁能自己搞定所有的事情,当需要沟通的时候,问题就出现了。
如果仅仅是传达一些项目决策,那么需要的沟通还不算多。但事实上需要沟通的包括所有的决策以及相关的上下文讨论,甚至还包括日常的闲聊--后者往往是非常多灵感的来源。
任何项目在任何阶段都有可能抱怨人力不足,区别只在于有些项目声音响,有些项目声音轻。对于人类,婴儿哭声最能直击人心。但项目不同,项目越大,哭喊越会吸引注意,小项目没人care,就算挂了,明年的今天老板是不是记得给你烧纸还是一个问题。
人力、资源不足怎么办呢?996或是997的作用是有限的,大公司老板们拍脑门一想,另一个城市、国家或是星球上还有自己的工作室,那里的人们勤劳勇敢,智慧和美貌并重,不如两个团队合作一下吧,我们一起做一个AAA出来。
远程合作是一个大坑,坑底死尸累累。不是每个团队都能驾驭。在人力资源上,或许是一加一等于二,而团队协作上,绝对是一加一小于二。
大致来说,两个凑到一起的远程团队,在合作中,会碰到下述问题:
沟通信息不全面
精神上在一起是没有用的,要肉体上在一起。异地恋情失败的可能会更大,应该是大家的一个共识。相应的,异地项目也会给合作的团队带来不必要的困难。最基础的问题在于沟通,没有谁能自己搞定所有的事情,当需要沟通的时候,问题就出现了。
如果仅仅是传达一些项目决策,那么需要的沟通还不算多。但事实上需要沟通的包括所有的决策以及相关的上下文讨论,甚至还包括日常的闲聊--后者往往是非常多灵感的来源。
这里的相关上下文讨论,指为了做出这个决策,你们的团队做的所有思考、尝试、争论和会议。原因在于所有的决策本身,并不是凭空而来,都是依赖团队大量的交流,这些相关的上下文如果缺失,没有沟通给远端团队,那么在执行上,可能出现知其然而不知其所以然的情况,逐渐可能偏离原先的方向。而且基于所有的上下文信息,在项目进行中还有可能需要远程团队做相关的衍生决策,没有这个上下文,完全不知道对方团队曾经怎么考虑问题,就容易跑偏。
想象一下这个情况,本地团队列出3个方案,pk一番后,选择了其中一个和远端团队沟通,然后远端团队执行中发现一定的问题,于是就自发讨论,然后选择了一个自以为完善的新方案做调整,却不料新方案本就是本地团队讨论过后被枪毙的。
正因为大家肉体不在一起,沟通的成本就变得更高,大量看似无关紧要的信息,受限于沟通的成本,无法传递,而它们往往在今后的项目进行中,对你们的合作产生致命的影响。
我知道你想说什么,一种可能是远程团队不做决策,都有一侧来做决策,但这肯定不可能。信息沟通的带宽是有限的,且两地合作的延时也是非常大的。所以远程团队必须要有一定的自主性。
打个比方,火星车不能全部依赖人类在地面控制,信号一来一回要很久,它必须用有一定的智能和判断能力来处理紧急情况,远程团队也是同样的问题,他们不能等待远程控制,他们必须做出一定的决策,才能把工作推进下去。
另一种辩解,是改方向了以后,及时和对方沟通就好了,那会有新的问题,然后我们展开说一下沟通的带宽和成本问题。
沟通带宽和延时高
沟通带宽和延时是一个不容忽视的问题,往往不能用执行团队的沟通意愿和沟通能力来弥补。常见的沟通方式,在面对远程合作的时候,总表现出这样这样那样的局限性。
先看带宽问题。
常用的沟通方式,无非就是电话、会议、邮件、IM工具。电话是一对一的,这意味着信息必须通过另一个人来传达给对方的项目组,多一个环节就会多些失真多些损耗,这个不用解释;会议是常见一对多沟通,但会浪费时间,且远程会议只适合用来传达结论,不适合用来讨论,我们在后面的章节解释;email就可以一对一,也可以一对多,看似理想,但缺点就是异步性,很多讨论是非同步不容易推进的,且由于异步性,所以回复mail容易被拖延,发个邮件半天没回复是很正常的;IM和mail不同,更多一点及时性,但是又不便于归档和检索,且由于IM过于方便,有关无关的事情都在IM上讨论,也容易分心。
所有的沟通方式,都无法在沟通效率上和面对面交流相比,简单说,就是带宽不够。带宽不够会造成大量重要信息无法同步,再看延时问题。
远程交流的延时是很难避免的。同组的沟通,可以当面正式沟通,可以约吃饭私下沟通,抽个烟或是上厕所邂逅,都能把事谈完,同一个办公室,抬头不见嘘嘘见,顺便就聊完了。远程沟通就没那么简单。
对于同步交流手段,如电话和会议,需要预约时间。预约的人越多,越难约齐,这个是常识。预约地点越远,也会难约齐,这个就比较不容易注意到。预约在下面情况下不会很顺利:
- 两地有时差
- 两地工作室有不同的活动安排,比如员工大会,国定假日放假等
- 两地工作节奏不匹配,比如法国同事一到7月就开始度假去了,12月份也是休假一片,国内同事则是春节前后效率极低
对于异步交流手段,比如Email和IM,无需预约,写完发送即可。但是交流沟通不是单方面的,有来有回才是沟通。你怎么知道对方有没有准时阅读,有没有同意,有没有按时推进。一般email处理上,很多人都有拖延症,见过很多同学邮箱里没有处理的邮件上千。而且收件人越多的mail越没人回复,大家的心理活动一般是这样的,这么多收件人,我一定要花一段时间用尽全身功力来好好回复,然后就没有然后了。由于你对远程团队的约束也不够,他们既不归你们团队考核,又不在你眼皮底下活动,联系你们双方的,就只有传说中的职业化。职业化,在很多公司,不是那么靠得住的东西。
由此可见,延时和带宽,很大程度上降低了我们的沟通质量,给远端合作带来了很大的困扰。由于组织一次高效的沟通是如此不易,所以大家更会在每次沟通时尽可能多的involve更多人,这样会让会议更冗长,从而降低大家开会的意愿,时间长了,沟通就会受影响。
即使大家克服了所有的难处,约过了千山万水,跨过了时空的组合,终于幸福的在一起沟通协作,后续还有更多的考验等着大家。
沟通质量
说到这个话题,不由想到了一些团队,开发者们最喜欢做的事情,就是在某些大作上市后,一起来看游戏,展开集体批判,进行各种鸡蛋里挑骨头的活动,来刷存在感。大家往往会说,这个游戏这里的美术完全不行,比我们做的差远了;性能一塌糊涂,才渲染这么点东西就卡得不行;游戏玩法有没有调过啊,上手曲线如此妖艳;音频定位,5.1听上去就像0.1一样。一通批评后,大家心满意足的散去,全然不顾自己的游戏品质还远远不如对方。
文无第一,武无第二,品质这东西只能意会,无法量化,给了大家打嘴炮的空间。
团队之间也会有类似的比较,合作双方都在日常工作中不自觉的进行对比,然后本能的以为,对方都是sb。
这虽然是很简单的道理,我却花了很久才意识到。那是在一个协作的项目,两地的团队一起做,由于工作原因,我经常两地跑,于是有时候在一个团队参加讨论会议,有时候在另一个团队参加讨论会议。
每次讨论会议中,总会对产品方向上有很多激烈的争论。在开电话或是视频会议中,总是争着争着,大家就不自觉不理睬远程团队,在会议室里和本地团队单聊,快速沟通概念,迅速达成一致。然后再开始重新电话沟通,把本方观点传达给对方,试图去解决两地的争执。我很多次的抱怨,和对方沟通太费劲了,我们可以如此迅速的达成一致,结果却要花更多的时间和远程团队再解释一切。对方团队理解能力和沟通能力太差了。
几次下来,就突然想到,我参加过两边的会议,每次都觉得本会议室里面的人是很容易沟通的,远端的团队是sb。可是没理由啊,同一批开发人员,会根据我所在会议室的不同,时而被归类为聪明人,时而被归类成笨蛋。
是不是沟通的信息,并没有办法在那一根细细的电缆中传输,本地讨论有太多辅助信息,或是张扬的表情,或是微妙的眼神,或是音调的起伏,或是挥舞的手臂,或是白板的书写,所有信息的综合,才构成了快速理解的基础?经过电缆一过滤,音频压缩一下,视频编码一下,传到远端,那些最珍贵和有价值的信息,就被丢失了?