如何将你的新工程师迅速调教成一只老鸟

发表于:2012-12-18来源:虎嗅作者:不详点击数: 标签:工程师
第一次觉得有兴趣介绍新兵营文化是和王建硕聊天的时候。当时我在百姓网里做Advisor, 了解到他们也有类似新兵训练营(即如何让新来的员工迅速融入到公司文化中进行高效协作)的项目

  前言

  第一次觉得有兴趣介绍新兵营文化是和王建硕聊天的时候。当时我在百姓网里做Advisor, 了解到他们也有类似新兵训练营(即如何让新来的员工迅速融入到公司文化中进行高效协作)的项目,一开始也是向Facebook学习,但在具体的操作上都在很小心的摸索,所以我们进行了比较深入的探讨。本文将分多篇来介绍新兵营计划的内容,背后的理念和操作上要注意的细节问题。本文节选自即将于12月份出版的新书《我在Facebook的日子 – 打造Facebook》。

  什么是新兵营

  其实,扎克伯格在2012年2月宣布IPO时对外发表的公开信里说得很清楚:“……Facebook要求所有新入职的工程师——包括那些将来并非主要从事编程工作的经理——参加新兵训练营(Bootcamp),学习我们的代码库、工具和方法。业内有许多人负责管理工程师团队,并不愿亲自动手编写代码;然而,我们寻找的实践型人才都希望也能够经受新兵训练营的检验。”

  没错,新兵训练营,其实也是菜鸟养成营,其目的就是让新来的工程师和产品经理接受为期六周的集中培训以尽快融入公司之中,更为顺畅地开始工作。可是,这有什么稀奇的?很多公司都会为新员工指定一个导师啊。但是,Facebook的做法明显区别于他们。

  为什么要有新兵训练营?

  先谈谈新兵训练营的历史。

  新兵训练营计划并不是从公司一成立就有的。我加入Facebook的时候还没有这一计划。我进入公司时,第一个月里找了一堆有问题的代码来修改,通过这些工作接触并认识了很多朋友。第二个月,我选了一个大概长度为一个月的项目自己玩,也没什么人来管。就在这些练习中慢慢地认识公司的人,学习公司的文化,并逐渐融入Facebook。但是随着公司迅速发展、员工不断增多,无计划的自学式的方法无法迅速地帮助大量新员工高效融入到Facebook,所以从2008年中开始,Facebook开始系统性地设计和试验新兵训练营计划,并在实践中不断改进。很快,这个计划变成了所有新加入的工程师都要强制参加的培训计划。对于产品经理,原则上也要求他们参加。由于产品经理进来的时候都已经确定好去某个组,不像工程师,大部分都没有确定去向,所以如果产品经理的老板有特殊要求的话则可以不经过新兵训练营而直接开始工作。这种情况比较少见。

  这一计划的主要推动者是安德鲁·博斯沃斯(Andrew Bosworth), 博斯沃斯是公司文化的主要捍卫者,“上帝不允许我们有一天不为Facebook的未来做准备。我们曾见过一家又一家的公司在做大后因为规模陷入麻烦,或因为文化陷入麻烦。”在2008年初,他开始意识到,Facebook的文化可能面临挑战甚至失败。他刚进公司时,所有人都彼此认识,可是2008年夏季的一天,当他在公司的餐厅排队时,遇到了一位之前从未见过的工程师。于是博斯沃思问他,在公司干了多久;对方的回答让他震惊:一年。他感觉有点不对劲儿。“我们是Facebook,如果我们不能规划一个超过150人的沟通网络,就真的有麻烦了。”他这么想。我在Facebook这四年半,一开始几乎每个工程师都互相认识,但人员的迅速增长,让这一点变得不可能。如何有效的让最适合(潜在)合作的人互相认识,有信任感,来保证项目的高效完成,成了Facebook这么些年很大的一个挑战。等到项目开始的时候参与的人员才开始互相认识,那么磨合期会更长,磨合成本会更高。

  2008年中,正是新员工如潮水般涌进公司之际,作为公司整个文化培育行动的一部分,新兵训练营计划登场了。这项计划就是为了让新工程师们认识公司里面相关的人,了解公司的文化,了解公司的技术与产品,从而能迅速地融入Facebook,并找到适合自身能力和兴趣的小组(即通过这个过程确定他的具体工作职能)。

  新兵在这六周里究竟要做什么?

  第一周的周一,新来的工程师们在公司自助餐厅里和负责他们的导师(Mentor)吃完中饭后,为期六周的强制性训练营就拉开了序幕。这位导师将全权负责回答新人们的各种问题,从工作,到生活,到八卦,如果新人真的感兴趣的话。简短的介绍之后(博斯沃思和其他老员工会在这个环节介绍公司的文化),每人会分到一台电脑和一张办公桌。第一次打开电脑时,他们会看到6封电子邮件,其中1封是欢迎信,另外5封介绍了他们将要执行的任务,包括修复Facebook网站上的错误。训练的目的很多,其中之一就是让新员工充分认识到,他们拥有直接改变Facebook网站的力量。

  Facebook很希望工程师在第一天就把所有的编程环境都设置好,在第一天就提交代码 [1]。这样可以在周二参与每周例行的代码发布活动,将代码同步到Facebook几十万台服务器中。Facebook并不希望新人在第一天提交复杂的代码,基本都是很简单的改变;希望通过练手让工程师能迅速了解整个流程,迅速进入角色。

  头三周有很多课程要上。一般公司的COO(首席运营官),CPO(首席产品官),工程副总裁都会在第一周给新人们介绍各个部门概况,给大家一个全局的认识。第二周,重点在于公司各个重要产品,常用的技术框架和技术工具的介绍。第三周,集中在公司的运营(包括市场,销售等部门),商业模式(Facebook主要的广告模式和虚拟货币的盈利手段)和其他非产品技术部门的介绍。

  从第三周开始,新人们就开始接触很多相关的需要招人的组,和这些组的经理交流,了解这些组的产品,参加这些组的会议和讨论。一般要求在第三周的周末,新人要选出不多于三个组作为他们感兴趣的备选组。接下来每一周的事情就是进一步缩小目标范围,以达到在第六周时只剩备选组的目的。这个组当然就是新人最后要加入的组。

  从第一周到第六周,所有新人60%以上的时间,都需要花在修复代码错误上面。其他所有的事情应该在剩余的40%时间内完成。Facebook相信,让工程师融入公司最好的办法是通过代码的交流。毕竟,产生高质量的代码的确是所有工程师最主要的工作。

  谁可以做新兵训练营的导师?

  导师需要对公司文化有比较强的认识,一般要在公司呆过一年以上。自愿担任导师者一般是想发展成人事经理(People Manager)的,也就是对人员管理、对与人打交道感兴趣的人。

  既然作为公司整个文化培育行动的一部分,那么如何产生出新兵训练营的导师则是其中的关键。首先,他需要对公司文化有比较强的认识,一般要在公司呆过一年以上,当然越久越好。我在2010年中开始做新兵训练营导师时已在Facebook超过三年;和我同期的导师有一位比我还要早一年。其次,做导师是自愿性质的(也可以由老板推荐合适的工程师去担任),只要你有意愿就可以提出申请,但也需要得到你老板的同意,因为做导师需要占用1/4强的正常工作时间。对自己要求高的人并不会因为做导师而让自己的绩效降低1/4,所以这意味着要挤占自己一部分业余时间。

原文转自:http://www.ltesting.net