仲老师作为两家创业公司CTO和连续创业的典范,哪有功夫在乎功劳归谁这点芝麻绿豆。他心里装着公司长远技术路线的大事,可总被一些情非得已的非他不可,消耗了时间片,破坏了情绪。一度公司里10多个程序员的代码,必须一条条等他review完才能check-in。仲老师说:“我这样跟团队讲,你代码不会写,我耐心指导给你方向。有了方向你还搞不定,或者拖拖拉拉的,我只能帮你写。但是,等我写好,你立马收拾东西滚蛋!还别说,团队看到我批评过的程序员一个个从公司消失了,从此就没人再来找我帮他们写代码了。”
“仲老师高明”, 我频频点头。
仲老师笃信,路边招来的程序员资质太差,担当不了他想做成的大事,所以他要离开那个环境,一个人想想明白。加拿大的某位副总多次跟我讲,“You know what I want. I need talents, not bodies。” 他们显然是一国的。
Steve McConnell在2008年发表的名为 “The Origin of 10x”的论文中指出,调研结果显示,最好和最差的程序员之间,工作效率相差10倍之多。依据我过去10多年的技术管理经验,10倍差异是完全合理的数值。
1、问题复杂度
培训和指导能教会程序员工具和技术的使用,但是程序员自身的成长能力和极限,无法通过外在措施改变。好的经理人,需要尽量把问题复杂度与每个程序员的机会成本相匹配。
2、创新性思维
解决问题的方法有千百种,好的程序员会自己去发掘限制范围内的最优解,会始终关注最新出现的技术,而不会仅仅满足于copy paste。创新性这个东西,纯属个人资产,收购只能买到存量IP,无法获得创新基因。仲老师想做真正niubility的技术创新,而不是眼前流行的业务模式创新,的确无法指望目前的团队。
3、团队协作
大软件开发项目通常需要团队配合完成,差的程序员甚至中等程序员,都会拖累团队进度。在技术探讨会议上,好的程序员瞬间能理解各自技术方案的关键点和可行性,很快能达成一致回去工作。令到仲老师目前最痛苦的地方,就是他的团队太slow了跟不上他的思维。
最后说说研发经理该怎么做。经理需要清楚辨认出所有10倍效率程序员,不遗余力把他们留住,他们的人格魅力自然会吸引来跟他们一样聪明的人才。
-
给他们争取最好的工资待遇 (他们该得的经济租金 )
-
告诉老板他们有多棒 (他们嘴上可能不说,但是心理都是傲娇的)
-
授予他们自治权选择团队新成员 (团队平均速度最大化)
-
协助他们把影响团队速度的人或因素剔除 (如果你是拖后腿的人,就自行闭嘴)
-
对他们坦诚(他们很容易辨别口是心非)
-
喂他们复杂的问题 (他们以解决难题为乐为荣)
-
允许他们使用任何方法解决问题 (他们会考虑时间和资金等约束)