在过去的十年中,通过建立一个远程团队来完成应用程序和网站开发的工作,X-Team称第二就没人哪敢称第一。在这段时间,我们通过自己艰难的摸索终于发现了成为一个真正高效的远程开发者所需要具备的品质。
下面,我把这些发现给大家分享一下。这可是我们的秘密法宝哦。一般人我不告诉他。如果你和你的团队都能严格要求自己,实施我们发现的诀窍方法,那么你的远程开发团队一定会有一个质的飞跃。
有一个关键点要记住,千万不要忽略常识性的建议。有些很明显能起作用的就应该把它列为优先选项,而重中之重是要为你的团队打好基础,这个基础就是:
团队成员之间应相互信任
一切源于信任。如果你的时间很紧迫,没办法看完全文,那么我强烈建议这一点你必须看。团队的定义是什么?精确地讲,就是一个个因为信任而聚集在一起的个体组合。
我们现在的实体团队,因为种种原因,比如有归属的部门不同之分,往往分成几个小团体,而这些小团体之间不能完全互相信任。不过令人惊讶的是,尽管缺乏信任,这样的团队却也能运作起来。
但是对于远程团队,信任却是生死攸关的事。因为在一个远程团队里,是没有部门之分的,没有上司督促你,没有老板监视你,也没有人照顾你。这是一个因为有着共同的目标而聚在一起并且相互信任的个体组合。
如果没有信任,那么整个远程团队就是一纸空文。所以我们每天都需要问问自己,“今天我该怎样为建设团队信任而贡献自己的一份力量?”
而下面所分享的10个诀窍总的作用就是为了不断促进团队成员之间的信任,增强大家的信心,保持不断进步。如果你能严格要求自己按此方法去做,并能持之以恒,那么你的远程团队绝对能完胜实体团队。
诀窍1:比和你的第一个女朋友沟通的更多
还记得你的第一个女朋友或者男朋友吗?还记得那时候你会不停的发短信,发电子邮件,传小纸条,甚至一边打电话一边睡着了?
但是,我这里所提倡的沟通程度需要更进一步。我曾经所在的一个远程开发团队 X-Teamer中的一个成员启发了我,在共事的8个月里,他每一天都会在Skype上给我留言,譬如“亲希望你今天一切顺利”之类的。
也许,你觉得这种事情你只愿意为你的妞去干,但是,我想说的是,我所说的这个同事,因为他,我们的团队氛围异乎寻常的和谐。直到现在想起那个团队,大家还是能感到温馨,相互信任,相互关心,无论谁需要帮助,即使需要通宵达旦也绝不推托。
当然做好这一条绝不仅仅是每天说个“你好”这么简单,你需要做到以下几条:
——当你有事离开的时候,告知你的团队。
——当你在最后期限里完不成任务的时候,要让你的团队知道。
——当你有空闲的时候,知会团队你随时能帮一把手。
——当你学到新的有用的框架知识,分享给你的团队。
——当你发现你的团队落后了或者代码中有了bug,立马通知团队。
大家相互协作,共同成长。
除了远程开发团队,你再也找不到更加有激情的合作对象了。因为在远程开发团队中,你除了和大家协作别无选择,但是也因为如此,每个人都获益匪浅,或者成为了更有能力的开发员,或者是更有凝聚力的领导者,或者让你在沟通方面得以锻炼,也或者展示了你的人格魅力,让你变得更加受欢迎。
诀窍2:找个时间聚一聚
聚一聚对那些在办公室工作的人来说不亚于一个巨大的挑战,因为有太多枯燥的会议,毫无营养的聊天和各种打断思绪的插曲。
而对于远程团队来说,要想找个时间聚聚,唯一要克服的问题就是时区差异。因为大家各自在不同的时区工作,也许全天的各个时间点都会有要会面的团队成员。
不像办公室的实体团队,有这个那个的干扰因素,远程团队的优势是你很容易就可以找个双方都空闲的时间聚一聚。只需要关了Skype和IM,点击email的关闭按钮,然后就是聚会时间了,It’s so easy!
俗话说,时间就像牙膏,挤挤就会有。如果能每天挤出3小时专注于手上的工作,那绝对会有成效。而当你习以为常的时候,你会深深迷恋上这种工作节奏。
诀窍3:找到你的“刺猬”
如果你没有读过科林斯所著的《从优秀到卓越》,那我建议你好好读一读。书里面有个狐狸和刺猬的故事,一只狐狸千方百计想要吃掉刺猬,但是刺猬只用一招就能克敌制胜,这招就是:卷起来,把自己卷成一个棘手的刺球。
这个故事告诉我们,要有自己的“招”,或许能让你在将来的职业生涯中取得成功,避免被各种“狐狸”吃掉。
所以,请务必找到你的“刺猬”,不论它是Drupal的主题美化,node.js,还是基础框架,然后全神贯注,专心致志学习研究。
你肯定要问为什么?那我告诉你,现在的公司只有在他们自己的程序员里找不到能胜任某个项目或工作的时候,才会需要远程开发。
你知道要想在洛杉机找到一个高级的Backbone.js开发者有多困难吗?这就是为什么X-Team会这么受欢迎的原因了,因为通过远程技术,一个公司可以拥有最好的软件开发技术,而不必局限于地理环境。
但是,要是你想成为一个“万事通”,懂得前端,后端,基础设施,JS, PHP, .NET等等所有方面,呵呵,那我只能说,抱歉,博而不精,木有价值。因为在你附近一定可以找到一大推类似于你这种的“万事通”。而需要远程开发的公司往往是因为缺少拥有某项特定开发技能的“刺猬”,而不是这种“万事通”。
最好的远程团队里一定都有“刺猬”。在X-Team,我们更愿意称他们为拥有超级技术的超级英雄。在远程团队里拥有超级英雄的好处是,碰到某些技术问题你就不必找人来解决了,自然而然会有对应的技术人员该出手时就出手。
远程团队里的成员虽然在现实里并不认识,但是需要了解每个超级英雄的技术特长,这样才能共建一个高效的团队。
诀窍4:保持技术创新
一旦你拥有了你的刺猬/超级技术,那么就必须让你的技术处于领先状态,而要一直处于这种状态最简单的办法就是保持创新。
一旦在远程团队工作,你的时间就会灰常灵活,可以和朋友出去玩,和家人去旅游等等,所有你可能不大愿意花时间去“修炼”,但是我郑重告诉你这是错的。作为刺猬,你是幸运的,但是如果你不好好琢磨你的优势,那你就会被别人迎头赶上,技术犹如逆水行舟,不进则退。
要保持技术创新最好的方法就是回馈你所在的社区。例如,假设你是Drupal刺猬,那你可以分享模块和主题到Drupal社区。这不仅可以提高自己,还能获得大家的认可和赞许,这也意味着更多的就业机会。
在X-Team,有一部分预算是给那些为社区做出贡献的开发员的,因为他们不但提升了自己,也为我们这个团队赢得了荣誉。所以你最好找一个奖励你这么做的团队。
诀窍5:学习语言
你是不是以为我指的是编程语言,哈哈,那你就错了,其实我指的是实际的语言。
如果在你的团队中,有巴西人,阿根廷人,菲律宾人,俄罗斯人,波拉克人,新加坡人,各种文化差异就出来了。可是,要是你每种语言都会点简单的短语,那么彼此之间就会愈加惺惺相惜,无比信任。当你对那个葡萄牙人说“Bom dia!”(相当于葡萄牙语的“你好”)的时候,他会对你非常有好感,因为这显示了你关心和重视他们的文化,并且想要建立彼此之间的信任。
所以,请学些类似“早上好”,“晚安”,“你好”,“再见”,“干得好”这类简单而实用的短语,当然,如果你需要到他们的国家和他们一起工作,你会更加感激这条诀窍。
诀窍6:限制视频聊天
视频聊天对于远程团队似乎成了一个必需品,被广泛使用。但是,我们应该慎用视频聊天。为什么?因为大多数情况下视频聊天其实并没有必要,简单的文字聊天对于解决问题已经足够了。
不过,如果你需要来一场激烈的讨论或者是头脑风暴,那么视频聊天就大显身手了。当人们聚在一起讨论的时候,越来越趋向于在争论中得到个决定。
很多开发者喜欢在视频中讨论如何去做这件事情,所以你经常可以看到开发者对着视频的一幕,但是问题的重点是我们要限制像这样的视频聊天的次数,而应该用视频聊天解决更有价值的问题。
视频聊天也可以作为两周一次或者一月一次的会面好去处,在这里你可以畅所欲言,无拘无束。大家全身心的放松自己,使团队空前团结,甚至还可以提高你的英语口语,趣味无穷。但是同样的,这种视频聚会也应该限制起来,使其高效,含金量高。
诀窍7:有正确的态度
X-Team有一种“sleepcanwait”的文化,意味着我们的团队成员废寝忘食,通宵达旦,不搞定工作不休息。而一旦有人完工了之后,往往会说一句“有什么需要我帮一把的,尽管说”。
在做项目的时候这句话出现在聊天室的频率非常高。正如我前面提到的诀窍1——沟通——一样,你得有一个态度,使得大家愿意相信你,信任你:你就在那里“听候差遣,随时待命”,要知道大家作为一个整体来完成项目开发的。
说那句话的感觉真的非常棒,能为团队出分力的感觉更是难以置信的好,并且这种态度也有助于你个人的成长。聘用远程团队基本上完全取决于这个团队的态度。信任的源头是正确而无私的态度。
诀窍8:服从在线主管
不知道是出于什么原因,关于这一条,很多开发者都很难做到。在这里我再提一提。
一般说来,肯定至少会有一个人作为在线主管指挥团队,而一旦他定下了优先目标,你就必须服从。
当你在办公室里面工作的时候,如果有了优先目标,压力就会陡然升高。但是如果是远程团队就不是这样了,因为在你的周围没有其他成员。没压力,没动力。所以你必须服从在线主管,“指哪儿打哪儿”,这样才能一步步完成项目开发。
Ps:虽然在线主管给予你压力,但是你也不必惧畏他们,他们也不是权威。
诀窍9:要言而有信
如果你说你能搞定这些工作,那么你就必须办到,要是你搞不定,那么你得让大家知道,以便于能及时调整计划。
如果你说了你可以搞定,但是最终却没有,你会瞬间失去整个团队的信任。也许就因为你,而使得整个团队一团混乱,拖延了行程,破坏了计划。
请记住,一旦你不能让你的团队信任,那你在这个团队也呆不长了。
诀窍10:请积极主动
如果你想知道如何能做到团队成员之间相互信任的诀窍,那就是请积极主动!遗憾的是,因为积极主动性需要长年累月的培养,所以大多数程序开发员并没有这种特质。
积极主动的定义非常简单:在事情成为让人头痛的问题之前解决了它。但是现在大多数远程开发者还无法做到这一点,原因竟然是,因为太过自由,他们没啥动力了。知道吗,最好的远程开发者就是那些能自觉利用这些灵活时间的人?他们有着一种积极的态度。
积极主动意味着在工作的时候创新思维,积极主动可以保证工作的进度,拥有了积极主动的态度也证明了你已经成长为一个合格的远程开发人员。此时,你完全可以离开办公室那种工作环境了,因为你已经不需要别人来督促你,也不需要别人不断告诉你下一步应该做什么了。
相反,你自己清楚,什么时候应该起床,什么时候应该工作,心中充满激情和活力。远程开发团队鼓励大家去做自己最擅长的事情,并且允许自由选择,并不强行规定。
这是远程团队的核心。可是要是因为这种灵活和自由却让你的工作热情逐渐被懒惰掐死,那么我很遗憾的告诉你,你并不适合远程团队的文化。
每天醒来对自己说:“今天我要做项目。我不会坐等别人告诉我怎么做,我会努力,我要加油!”这是一个非常激励人的方法。但是,如果你能一直保持这种积极主动的态度,你绝对会是下一个超级英雄。
总结
编程开发的未来趋势是远程团队,远程开发使得世界上最优秀的人才,最棒的超级英雄聚集在一起,获得史无前例的成功。
不管你的写代码能力有多强,如果你不懂得如何成为超级英雄,不能敬业,不会无私协作,不能积极主动的解决问题,那么即使你的写代码能力逆天的强,你也不会成为一个真正的远程开发人员。
远程团队正在改变着开发人员的定义,我们必须认识和适应这种状态,如果我们不想被这个世界淘汰,那么是时候转变我们的工作方式了。最后问一句,今天你为建设团队信任而努力了吗?