关于项目经理不懂技术
自己之前的想法是项目经理应该是技术大牛,或者起码应懂一些技术,因为只有这样才能更好的确定客户所提出的需求是不是可以实现。但是现在又有了一些新的想法,项目经理不需要懂技术,或者说项目经理不懂技术反而更好。
讨好客户
如果项目经理懂技术就会被技术所束缚,简单来说就是在客户提出需求的时,项目经理根据自己已有的技术水平做出判断:这个需求无法实现,或者实现起来工作量过大。于是很有可能当面就把客户的需求给回绝了,一次两次还是可以接受的,如果不巧这个项目经理的技术水平低、见识少,那么就会把大多数有难度的需求都给回绝。长此以往,客户便对这个开发团队失去信心,“怎么什么也做不了呢?”。
但是如果项目经理丝毫不懂技术那么面对客户的请求,会说尽量去试一试之类的话,回来之后就是我们现在非常熟悉的场景了。项目经理的口头禅:我不管你是如何实现的,我要的是半个小时以后的结果。随后就是程序员苦命的加班了。
但是最终的结果是好的,起码客户认为这个团队是由能力实现自己的需求的。从这一方面来说项目经理不懂技术可以更好的讨好客户,给客户一个好印象。
推动技术的发展
上面说到项目经理在谈需求的时候由于不懂技术从而答应了客户“过分”的需求,所以下面负责实现的童鞋们非常的命苦。相信任何一个加班的程序员都在暗地里骂过那个屁也不懂的项目经理,但是从大局的角度出发,只有这些过分的需求才能推动技术的进步。就像Ajax的出现,不就是想把BS的客户体验搞得和CS的一样么,可能当时看来这个需求是过分的,但是现在这几技术已经变得非常常见了。这就是所谓的推动技术的发展。(说不定那天某个客户的一个刁钻需求就引发了一场技术的革命。)
保证开发进度
项目经理的口头禅是“十分钟能不能弄出来”,而且一会儿催一遍,一会儿催一遍,跟催命鬼似的。没有办法,人都是有惰性的,别说上班的惰性,就是为自己学习都是有惰性的。所以需要一个人去监督,去鞭笞。
但是项目经理如果懂技术,大概就会这么说,“这个挺难做的,你看看这两天能不能做好吧”这样一来来把项目的进度拖了两天,但是如果是前一种,那么编程人员可能会快马加鞭,加班加点的把功能实现,对于项目来说这个莫大的幸福。
凡事都不是绝对的
并不一定说不懂技术的项目经理要比懂技术的项目经理好。凡事没有绝对,要辩证的看,各有各的好处,不同的场合需要不同类型的人而已。