如何在团队建设工程师文化?阿里资深技术专家这么做

人人都在说工程师文化,90%的同学们向往工程师文化,然而95%的同学们觉得自己的部门没有工程师文化。但关于工程师文化,事实告诉我们两件事:

如何在团队建设工程师文化?阿里资深技术专家这么做事实1是:我们定义工程师文化的标准不一样。这就跟美女一样,每个人心中的美女都不一样, 但我们都爱美女。
如何在团队建设工程师文化?阿里资深技术专家这么做事实2是:工程师文化还是可以客观感觉出来的。如果你真是个美女,大家还是都会认为你漂亮的。标准再不一样,敢说奥黛丽赫本丑的人还是需要莫大并且不要脸的勇气。

基于这个不恰当的比喻以及事实1得出:90%同学们都爱美女;基于这个不恰当的比喻以及事实2得出:95%同学们部门真的都没有美女!

基于以上事实我们做一个假设:如果同学们部门里都是美女,大家一定都很开心!

基于这个假设得到事实3:都是美女的部门业绩肯定完蛋了(这个推导过程只可意会不可言传)。

根据以上一个假设和三个事实,我们得到结论:一个部门要有美女,但不能多!极端的工程师文化产生少数几个极端成功的公司以及大多数死得很惨的公司。

工程师文化 vs KPI文化

如何在团队建设工程师文化?阿里资深技术专家这么做工程师文化是由内而外的引导和自然发生, KPI文化是由外而内的信仰和强行注入。
如何在团队建设工程师文化?阿里资深技术专家这么做工程师文化着眼未来, KPI文化活在当下。

如何在团队建设工程师文化?阿里资深技术专家这么做工程师文化痛恨KPI,我不爱的我不做,我爱的我疯狂。 KPI文化唯KPI说话,爱不爱都要像战士一样完成。

如何在团队建设工程师文化?阿里资深技术专家这么做

浅谈工程师文化

工程师文化的前提条件

信任:leader和产品对工程师绝对的信任是工程师文化的最基本条件。如果他说要用一个更优雅的方法解决一个问题,但要花更多的时间,请你选择相信他。好的工程师非常懒惰,他这么做一定是为未来的工作提高效率。

卓越的技术领袖存在:领导如果对技术没有信仰,只把技术当成工具,就很难说这个团队会有工程师文化。说白了不是每个不懂技术的领导都懂得欣赏优雅代码产生的美和对未来产生的深远影响。

技术列为KPI:在我参加晋升面试的时候,50%以上的技术人员讲的都是产品(what),而不是技术(how),并且他们都晋升了.....这源于业务BU总是把业务当成KPI的唯一衡量手段:技术好不好有什么关系?今年不出事,明年我已晋升。如果没有技术KPI,技术就会总被放在次优先级。

工程师文化的特征

小团队:7-12人的团队是比较适合的团队大小。有人用pizza团队来形容一个团队的大小,就是一两张pizza可以喂饱这支团队。facebook和google经常有2-3个人的团队,小团队有如下特征(中文为个人即兴翻译,可以选择忽略):

如何在团队建设工程师文化?阿里资深技术专家这么做Move Fast and Break Things(不破不立);
如何在团队建设工程师文化?阿里资深技术专家这么做Huge Impact with Small Teams(以少为多,精准打击);
如何在团队建设工程师文化?阿里资深技术专家这么做Be Bold and Innovative(勇敢追求卓越);

技术创新:团队必须坚信技术可以为业务带来不同于现在的可能性,现在没看见不代表它不存在。技术挑战产品是因为也许你不知道还有更好的技术和架构可以更简单更有效地完成一个业务任务。团队激励不单纯以业绩为主的技术的创新,比如:Google每个工程师都有20%的时间可以用于研究自己喜欢的技术,而不是跟Google相关的业务。

技术决策权大:尊重技术决策的前提就是信任技术决策,而不是简单粗暴地说:“为什么完不成?随便叫一个程序员就可以完成。”工程师未必在所有产品特性的定义上有决策的能力,但在优先级和排期上是可以从技术角度给出决策。所有的业务deadline倒排都在一定程度上逼迫技术做出妥协,并且这些妥协慢慢变成合法理由:我的代码不好的原因是业务压力太大。Note:工程师们不要为自己邋遢的代码找理由,代码对于一个软件工程师就是尊严。

技术数据可视化:可视化技术相关数据包含圈复杂度、测试覆盖率、重复率等等,对数据好的工程师给予掌声。但是,好数据给予的是掌声而不是奖金,所有数据都可以被造出来,这是个充分但不必要条件——好的代码数据肯定好,数据好的代码不一定是好代码。

阅读全文请点击