建立一支世界级的开发团队就像是建立一支好的球队——每个人在自己的位置上都是最棒(转)...

我的朋友Lee是美国普林斯顿大学的本科,斯坦福大学的硕士生。在硅谷做过几家公司后,前几年回国创业,有一次我问他,到底中国的工程师水平和美国硅谷这些名牌大学的工程师水平差多远?Lee说其实中国很多普通大学的工程师水平基本相当于美国那些工程师,也有很多出色的工程师超过美国普通的工程师,也许顶尖的技术高手还是有差距。

我后来又问过其他一些从硅谷回来的朋友,他们感觉是中国的开发人员水平应该不是很落后,落后的是沟通能力,心态,敬业精神。另外,整个团队的组织和管理往往也存在很大的问题。

在团队研发的方向,产品设计等方面,离世界级的产品就更远。

如果说硅谷的IT团队几乎个个都能参加IT世界杯,中国的许多团队可能连世界杯入场资格都没有。

建立一支世界级的开发团队就像是建立一支好的球队。也许跟硅谷比,我们没有那么好的基础,没有那么好的营养和训练条件。但既然印度人能,我们也能。

喜欢足球的朋友应该非常清楚一件事情,那就是在一场足球赛中假如球员之间缺少默契的配合或教练的指导思想执行不到位等情况下,那场比赛多半是以失败告终的,因为这支球队并不是优秀的球队。开发软件项目就象一场进行中的足球赛,是靠项目管理、系统分析设计、程序编制、测试、市场营销等不同角色人员共同协作 完成的,不同角色的人执行的工作相互促进和制约着其它角色的人的工作,因此一个高效的软件开发团队是高质量软件项目或产品的保证。

我经常跟团队开会的时候说,不要把我当老板,当经理,要把我当教练。我们的目标就是赢得比赛,大家是一个整体,每个人最应该做的就是做最好的自己,把分配的角色做好。
而我则需要通过选拔,培训,激励,发现每个人的特长,看我们球队最需要这个人踢什么位置,就安排他去踢这个位置。

一个好的教练需要针对不同的情况,制定不同的策略。一般在IT公司要考虑四种核心架构。

- 业务架构

生意的目标是最关键的。如何把业务分析清楚,形成最好的业务流程,并把核心的,重复性的工作交给计算机系统来做。实现的周期和成本很关键。对业务的长远发展判断也很关键。
不是所有的业务都需要建个系统来完成的,建立计算机系统的成本是沉没成本,建完以后用不上或者用的很少,那就什么利益都拿不回来。
往往很多老板或者其他部门的人要求上各类系统,这时候就必须选择对公司发展,最有用的系统。对部分不够了解的业务,开始只能用很低成本,很快的方法来做。有些试探性的业务或流程,根本就不要建系统,先拿个excel用起来再说。
有了业务目标,就需要建立业务架构和信息架构,理清各块信息之间的关系和信息流程,信息标准和接口。

- 应用架构

业务目标明确后,需要确定所有的应用,应用人的角色,水平。能够根据实际业务定一个基本应用框架和应用之间的接口。如果套用时髦的SOA,那就是确定各个服务和各个服务之间的关系。

- 技术架构

应用目标确定后,技术可以随意选择。一般技术平台的选择跟现有团队的技能水平和历史代码有关。在有些情况下,可以考虑混合多种技术。
我觉得技术就像工具,不同的时候使用不同的工具是最好的。比如西瓜刀,菜刀和水果刀。
当然可以用西瓜刀切菜甚至削苹果,也可以用菜刀切西瓜或者削苹果,但是如果我经常要切菜,宁可用菜刀。出门旅行,菜刀和西瓜刀就不能带了,还是水果刀好,就算临时要切西瓜,也只能凑合用了。

- 人员架构

人员的架构随着以上架构的确定,基本上项目团队人数和所需要的技能能够确定了。
为了控制风险,一般还需要设置两个重要角色:产品经理和救火队员。
产品经理负责控制所有项目团队的过程和结果,确保项目执行过程中沟通顺畅,时间控制得当,质量符合要求。

救火队员是个多面技术高手,应该对所有团队的设计,编码等都能掌控,在任何团队出了技术难题时候,迅速进入,短时间内解决问题。很多时候还需要进行前瞻性的技术研究。一般做这个位置的都是技术发烧友。

对于人员的培训,策略是尽快地发现有潜力的人,尽快地通过适当的项目,适当的位置去试他的潜力。

可以鼓励团队成员之间共享知识,比如轮流做培训等,提高每个人的专业水平。

另外,给每个人定期做评估,看看他在现有的位置上发挥是否出色,是否还需要指导。或者考虑给出更多的训练目标,帮助他掌握更多的技能。

团队的最终目标要定的很高,就像小时候看的电视《排球女将》,只有最高的目标才能激发大家的潜能,才能形成团队合作,调动大家的激情。马云是这方面的顶尖高手。
但是也要定切实可行的阶段性目标,比如大家踮一踮,使些劲能完成。然后下次再定的高一些。

团队成员做出了成绩,一定要及时表扬,有了错误,也要及时批评。良好的反馈和激励体制是促进团队成员不断成长的加油站。

每个成功的release,我们都要去庆祝一下。每个成员做出来了超出期望的价值,我们都要奖励。

你可能感兴趣的:(项目管理,项目管理,Excel,SOA,软件测试,框架)