新团队的组建

来源:互联网 发布:网易公开课 网络不给力 编辑:程序博客网 时间:2024/04/27 20:01

2008到2010,对于公司和个人,改变,都成了主旋律。原公司被并购,研发团队重组,扩张,新产品新项目的引入... 而我自己,如前一篇 ownership的觉醒  中所说,经过重组和等待之后,得到了一个宝贵的机会:从零开始,组建上海的伽玛刀开发团队。

对于一个新团队来说,什么是最重要的?对于团队的海外合作来说,什么是最重要的?当时的我,都没有头绪,就好像一张白纸。

正因为是一张白纸,所以我也能够像一块海绵一样,竭力的吸取新的,不同的,信息和观念。

"As a manager, we shall not try to control, to manage the team; Just try to support them." -- Johannes Morelius, VP Operation & Product Maintenance.

这是一句对我影响至深的话。

初访瑞典

初步的前期准备之后,2010年3月,第一次来到Stockholm,之前Conference Call里面不同的声音,一个个都真实起来。没有空去检讨自己的英文,没有空去紧张自己的无知,没有领导能够帮着掩护,一场场培训,一次次讨论,竭尽全力的听懂,竭尽全力的表达。了解产品,了解系统架构,了解开发流程,了解他们对上海的期望,还有最重要的,熟悉那边的开发团队。三周飞快的过去,学到了很多;但我最大的感触是,我看到了不同的世界。

面对不同

是的,不同的世界,从观念到细节,几乎每个地方都和我过去的实践不同:

Team Management,从based on hierarchy, based on task到flat organization, supporting the team

Project Management, 从strong functional control, weak project到strong project control

Process, 从瀑布式开发到迭代式开发

Software Quality, 从形式化的code review,到兼顾架构和细节的hot review以及unit test

。。。

面对着这些不同,我很兴奋,感觉它们就好象是能够解决目前很多问题的钥匙。但是,我们现在的团队,能不能承担起这么大的变化呢?

建立互信

改变,事实上很难!有些是心态,有些是习惯,有些是实际操作中的细节。我们很幸运,初期只是两个人的纯开发团队,不需要太多关注High Level的东西,瑞典团队也给了我们充分的时间。从一些简单的项目开始,一点点把不同的地方列出来,从最最细节的tab空格数,指针是否判空,到后来class的设计,design pattern的用法。。。逐条的讨论,理解和实施,逐步提高双方的一致性。

至于习惯上面的改变,就要难很多。比如说代码注释,code review和unit test,对于我们来说基本上是一个从无到有的过程。一旦和我们已有的习惯相悖,潜意识里面会很抵触,认为这些会耗费大量的开发时间,真正的效果又难以体现。所以,在最初的半年,甚至是一年时间里面,对于注释,code review和unit test这些质量上的要求,我们都没有足够的重视;直到在一个大项目临近结束的时候,我们的代码暴露出来大量问题。结果是项目因此delay了半年,我们花了很大的代价,才让这个Quality Mind深植在心里,贯彻到每天的工作中。

我们犯了很大的错。但是,我们和瑞典团队之间的互信,却在这个错误当中一步步建立起来。承认问题,面对问题,我们用积极正面的沟通,来尝试解开双方的误会,我们用更紧密的合作(peer programming),来尝试更好的理解和学习对方。

Trust,需要的是无所畏惧。不要怕犯错,不要怕暴露错误;只有不再畏惧,才能真正的做到open和honest,不光是对对方,而且是对自己。之后,再用一个接一个的commitment来加强信任。

To be continued:

(招兵买马)

(巩固提高)


后记:

开始写之后才发现,这个文章题目起的太大。关于组建团队这些事,一篇短短的文章很难说全面,说清楚。团队的人,团队内部外部合作,团队文化,团队目标。。。几乎每一个点,都可以提出来单独成篇。

现在完成的这些,着重在外部合作。争取春节里面有空再写下去。



0 0