再看微软团队文化
人-软件企业的核心价值
微软最后价值的是什么?是代码?是固定资产?都不是!是那些在微软工作了多年,开发过多个重要产品的开发团队和程序员.他们的价值在于拥有这样经验的程序员在业界很难找到,而对于公司来说他们的替代成本相当高.
Bill Gates曾经说过,如果微软失去20名最优秀的员工,我很难想象微软将会怎样.人是微软文化的核心,这决定了大家对很多事情的看法,也对经理人员的智慧和领导力提出了很高的要求.
微软从来也未曾试图用某些成熟的过程把程序员变成像生产线上的工人那样容易替代,因为公司有很多高层都是程序员出身,他们知道那是不可能的.信任并依赖团队和个人,这是微软成功的重要信念.
富有安全感的工作环境
在微软短短二十几年的历史上,公司随时都面临严峻的竞争和挑战.竞争迫使每个开发团队全力以赴专注于产品的开发和创新,逐渐地人们习惯了一种诚实、客观、开放和富有建设性的交流方式。大家称之为“职业”的方式.程序员的工作主要集中于设计、编码和测试,他们清楚地感到自己的经验和水准在不断进步,这正是他们想要的.
其实程序员根本不必担心因项目失败而失去工作,因为每个月微软都会有新的产品组成立。程序员们考虑的是更重要的事情,他们讨厌失败,他们希望他们的产品能赢!
每过一两周,程序员都有机会和他们的经理沟通,坦诚地交流自己的想法,工作中和团队中的问题,以及个人的发展.微软内部有一条成文的规矩,如果程序员想换个产品组发展,他的经理不得阻拦,重要的是设法让他留在微软。副总裁出面挽留人才的故事在微软经常能够听到。
职业发展和规划
微软的每个程序员每年都有机会选择自己的职业发展道路,你是否想做经理?对于你的经理而言,有人想做经理是个好消息,因为找不到继任者他是很难晋升的.
然而,你不必做经理,如果你舍不得设计、编码和测试的生活节奏.成为技术领导者是另一条明晰的职业发展道路,你可以成为技术领导,构架设计师、甚至杰出工程师(Distinguished Engineer,享有公司副总裁待遇的工程师).
都说程序员是年轻人的职业,可微软就有很多非常资深的工程师,四十多岁还在编写代码,真正的技术领导者对代码有恒久的热情.不必担心级别和待遇,它们与做不做经理没有什么关系.其实在微软做经理相当困难,微软的文化中只有成功的团队和失败的经理
没有授权的领导
经理是授权的领导者,但微软的文化同时鼓励没有授权的领导者.程序经理是微软最早发明的角色,然而程序经理不是经理,这一角色最大的挑战就是成为没有授权的领导者.
在一个特性开发组中任何人都可以成为领导者,关键在于他的想法和贡献得到大家的认可.领导者最关键的能力莫过于给团队提出一个愿景(Vision),时刻清楚地告诉大家我们的目标,现实的可能性,以及我们如何能够有效地达到目标.
这些没有授权的领导者不仅塑造了一种健康的文化,还把经理人员从团队的内部管理中解放出来,使他们有更多的精力从外部世界寻求新的资源、机会与合作没有授权的领导是微软成功的关键因素之一
教练和明星
微软的程序员很少接受正规的培训,这在国际化大公司中非常罕见.尽管内部网上有几百个讲座和课程的录像,但对员工没有任何选课的要求.微软的文化崇尚另一种培训机制,有点像传统手工业中师傅带徒弟的方式,只是我们称师傅为教练(Coach),作为教练机制的体现,程序员的直接领导(开发组长)经常是团队中最有经验的程序员,而开发组长的经理(开发经理)几乎一定是程序员出身.
这里不仅没有外行领导内行的问题,而且程序员的第一任教练往往是一名优秀的程序员,他们最能体会程序员工作中的苦恼与乐趣.名师出高徒是教练培训机制的必然结果,培养和选拔明星是微软文化的另一个特点,的确人们相信明星能改变一个团队和产品,只是不要把过多的明星留在团队内.
Excel产品组就是因为培养了许多开发经理和几位副总裁而闻名遐迩的.教练(Coaching)和明星(Superstar)是微软文化的另外两个重要的亮点.