从程序员的温情管理文化说起


从程序员的温情管理文化说起

Published on Thu 10 Jan 2008 12:01 ( 1 year, 5 months ago)
观点 随笔 软件

看到霍炬写的“程序员的温情管理文化”,写得很好,与我心有切切焉。

想想很久以前,我也就是这么做的。 那个时候找到的资料很少,对于怎么运行管理项目没有任何经验可言,唯一能找到的就是几本关于Microsoft的书,至今都能记得,比如《code complete》《debug the develop process》《write solid code》, 还有《微软的秘密》《I sing the body electronic(现在有个中译版本可能是“微软面面观”)》, 这些书我现在仍然觉得值得推荐和阅读。

当时没有经验也没有人指导,所以只能啃这些书来摸着石头过河。结合自己的工作习惯,推己及人,我做的第一件事情就是完全的弹性工作时间,很长时间我把这个奉为原则,甚至为此和反对的合作伙伴争吵。无论如何,我营造了一个非常自由宽松,但凝聚力和产能非常强的小队伍,物以类聚,我们大家都是夜猫子,那时候基本是大家都早晨从中午开始,晚上常常2~3点了去大娘水饺夜宵然后才各自回家睡觉,那种感觉真的让我很留恋,而那时候的team很小,但现在总结,那时候10人以内的team是我过去自己带的team中最强的,效率也是最高的,但绝对是最自由散漫的。

随着人变多,问题开始出现,并且越来越严重。人多了接口就多了,人常常找不到,这些都不算真正的问题,真正的问题在于一些充分利用这种自由的人开始悄悄出现了。另外越来越多的来自其他“成熟”公司的“专业”人士指出这种散漫的团体只是小打小闹,要成气候必须要上“正轨”。随着几个关键项目的开发失败,是的,彻底的失败被迫砍掉和停止, 我觉得也许应该要更多的人,要更清晰的process, 上班要更加像一个公司, ... 不曾想到的是,这些东西最终逐渐把公司和team变成了也许是别人眼里的“好”公司和“好”团队,却不是我所期望的。

自己做软件带team这么多年下来,觉得自己越来越从一个自由主义的,近乎盲目的Y理论信奉者的人,一步步不情愿却身不由己地变成一个越来越苛刻,X理论的执行者,可能有一些同学因此而痛恨我,不过也许他们不曾想到我为此而痛恨自己和痛恨那些让我不得不这么做的人和事。虽然我自己都很不喜欢这样,但现实中的一些问题如同作茧自缚,常常让自己越来越陷入这样的倾向。 毫无疑问,我不是个好的管理者,或者说我从来没有兴趣去成为一个好的管理者,我的兴趣在于做一流的软件,为了实现这个理想,我才去组team, 才去做一些本来我不想做也未必擅场的事情, 比如管人。总而言之,团队中很多灵活,宽松和人性的东西,常常在一些充分利用这些制度的人的做法下,被迫一点点地失去,不幸的是这样的人虽不多却总是有,而破坏力是强大的,也许他(她)们有他们的能力和强项,但显然不适合我的风格。

回头总结经验和教训,再结合最近这一年来我学到的其他的成功团队的一些做法,我惊讶地发现,过去我最没有经验,最由着性子,摸着石头过河的时候的做法才是最正确的做法,才是最接近一些成功软件企业的软件开发团队的管理做法。看到霍炬的文章,我觉得仿佛找到了我很多年前执行着却自我怀疑着的观念,希望他们能延续和发展下去,成为优秀的中国软件团队,并因此而带动出更多这样的优秀团队。

为什么看似自由散漫的团队反而能有好的生产效率呢? 霍炬的文章中已经谈了一些,我再补充一些。 我现在来看,这样的宽松team的能进行宽松人性管理,还有几个要点,首先重中之重就是人要精干,宁缺勿滥,我党教育的“人多力量大”在软件行业是错误的,《人月神话》已经告诉了我们这是神话而已。 一旦团队中出现了喜欢“利用”制度自我获利的人,就会逐渐在不知不觉中瓦解宽松的优势,就如同千里之堤溃于蚁穴的道理,因此如可能要及早摘除这些不适合的对象。 其二是找适合小团队的敏捷process, 我们过去犯的一个严重错误就是中了CMM的毒害,搞了个一堆大公司的摸板照葫芦画瓢,结果好的没学会,自己的精干敏捷的优势反而丧失了,现在敏捷开发过程已经很流行了,所以已经有很多的书和资料可以参考,我推荐Scrum; 其三,不要迷信所谓“高手”,这似乎和前面说的人求精有矛盾,但对团队来说好的人是指对团队能积极贡献的人而不是纯粹的个人能力,而且高手都是新手长成的,对做的事情有热情是非常重要的,谦虚、合作、不搞特殊化的“高手”才是有价值的,否则反而是有害的。

也许有人说团队总要成长的,你这些东西如何适应大些的team? 我现在的看法是,第一,尽量不要扩大团队的规模,一定要以足够苛刻的面试要求来招人(当然这可能几乎招不到人,所以自己把握),一旦降低条件招来一堆没用的人(或者不适合你用的人),危机就开始了; 第二,几个的小团队可以组合成大些的团队,没有新的领队?说明还不具备扩展新团队的能力,等等吧; 第三,一定要找到“合拍”的人,有些人的能力很强,但不适合于startup team, 引入这些人是lose lose局面;四,不要需要羡慕“大”,大不表示强,强未必需要大。

我的这些观点只适用于这样的团队:

* 以开发软件产品或者以软件支撑的服务的团队;

* 对软件质量,技术水准有不懈要求的团队

* 不甘平庸,希望make something different的团队

这样的team在中国是否能获得好的回报,我不知道,只是纯粹从技术团队的建立角度出发的,这也是从我自身特长和缺点出发的,未必适用其他人。 这些观点显然不适合在人员管理方面EQ超群长袖善舞者,也可能不适应理想是成为企业家的人,更不适合只是打算靠软件或互联网赚一票而并不是很在意软件和技术本身的人。

我觉得还要谈谈最近学到的一个词“work life balance”, 这太重要的。work life balance的团队才是有长远生命力的团队。也许有人觉得我是个工作狂,但呵呵我实际上是个很注重work life balance的人,只不过我的一些life的喜好和work差不多而已。这么多年的时间,我从来没有放弃自己对计算机技术的喜好和热情,是的包括写代码,这是重要的部分。n年来,n多人,有真诚建议的,有嘲讽的,有鄙视的,他们告诉我要这么喜欢技术动不动自己coding是不可能有更大进步的,我从来没有动摇过,呵呵,因为我喜欢。为work绝对不可以牺牲life, 绝对不可以做work的奴隶,所以我coding, 我去开无关紧要我自己enjoy的会, 我去游历世界,... 这些生活上的喜好,让我总是可以在挫折和问题中寻找到出路和方向。startup是艰苦的,但绝对不能为了创业这种work而牺牲掉life, 否则就是得不偿失的。

很高兴能在这里能共享一些自己的看法,在我过去犯着错误和在现实和理想中挣扎的时候,是多么希望能有一些观点和建议来给自己指明方向啊, 希望这些能对某些谁有一些价值和帮助。

最后需要强调说明的是,这只是我的一家之言,最多只能说是作为一个多走过几步路的人的一些体会,甚至不能称为建议,是否值得采纳请慎重思考。


Related posts:


Search related in web:

Custom Search

RSS Feed

One click subscribe this blog in your google reader!

Be social!


Want to say something here? please sign in



Blog posts link to this page
What are friends tweeting?
Tags cloud
Monthly Archives