当我们听到“文化”这个词的时候,脑子里浮现的情景往往是某个晚上去歌剧院看演出,或是高中生物课上在培养皿里繁殖细菌的画面。工程师团队的文化其实和后者的差别并不大。 假如你吃过非常美味的发酵面包并且对烘培它的人感到好奇的话,你会发现这面包的关键就在于酵母。酵母是面粉和水里的酵母菌和乳酸菌。酵母菌能让面包膨大,而乳酸菌是让面包具有强烈酸味的秘密。然而并非所有乳酸菌都是一样的,有些乳酸菌产生出来的风味更好吃,所以当面包师找到味道一流的酵母(即含有恰当酵母菌混合比例的面团)时,她就会小心翼翼地通过加水和面粉来继续培养这种益菌群。然后只要取出一小部分酵母混进面包里,瞧!马上就能得到一条好吃的发酵面包啦!这是因为酵母里的菌群不但能产生她想要的风味,而且还能盖过面包食材本身以及空气中的酵母菌。 ![你需要一块好酵母](https://box.kancloud.cn/7ec0a8d42fcb97a6bc2765e8e7b67d2f_586x672.jpeg) 你需要一块好酵母 团队文化就像是一块含有酵母的面团:酵母(团队创始人)能将菌群培养物 <sup>1</sup> 植入生面团(团队新人),从而变出一块好吃的面包(团队)。如果团队本身具有很强的风格,它就能压过新人带来的任何“坏习惯”<sup>2</sup>。如果团队文化不够强势,团队就会被新人带来的风气所影响。由于未知的文化往往伴随着未知的结果,因此一个团队最好拥有自己的熟悉的团队文化。 ![好的酵母能让新人融入你的文化中](https://box.kancloud.cn/e8ec1c3e71a0dae55ed22e171f54a02f_581x274.jpeg) 好的酵母能让新人融入你的文化中 团队文化不仅仅是成员们编写代码的方式或是成员之间的相处之道,它还包含了所有人都认可的经验、价值观、目标。我们工作过或观察过的每个工程团队对此都有不同的见解。团队或者公司的创始人决定了团队大部分的特点,但它还是会随着时间不断变化发展。 组成团队文化的元素非常丰富。有些和代码编写有直接的关联,比如代码审查、测试驱动开发,以及在大规模进行编码前对于良好设计文档所抱的态度等。有些元素则和社交的关系更大一点,比如每个星期四一起去某个餐厅吃午饭,或是星期五的时候一起去大家都喜欢的酒吧喝一杯之类的。有些在外人看来甚至很傻很古怪:比如Google匹兹堡分部曾经就在一条货运火车线旁边,每次有火车经过的时候(顺便提一句,火车可是非常长的哦),大家都会跳起来互射Nerf泡沫枪弹 <sup>3</sup>。所有的这些元素组成了一支团队的文化,并且影响着团队的生产力以及吸引和留住优秀成员的能力。 如果你观察一下现在任何一家成功的软件公司——Google、Apple、微软、Oracle,你就会发现每家公司的企业文化都非常不同,但都是由创始人和最早的员工确立起来的。随着公司的成长和成熟,其企业文化也发生了演化和改变,但是它们仍然在方方面面保留着独一无二的特质,比如产品开发模式、对待员工的方式,以及与其他公司竞争的手法等。 > <sup>1</sup> 译注:culture这个词有“文化”的意思,也有“培养物”的意思。这里作者玩了个文字游戏。表示文化是需要潜移默化的意思。文中在作比喻时将相关的词打乱在一起混用,为了行文方便,译文里全部改成直白的话。 > <sup>2</sup> 当然啦,再强势的团队文化也应该能够接纳新人带来的“好习惯”。 > <sup>3</sup> 傅攀勃头一次拜访Google匹兹堡分部的时候被吓得不轻。译注:这是孩之宝的一种枪械玩具。