在我的职业生涯生,曾遇到过一些奇事,最奇的就是外行领导内行做事。一般来说,这种情况没有不出事的。后来在一家上市公司中,发现完全不懂技术的项目经理也可以把团队的带的很好。我很奇怪,与于就细细的琢磨了一番。
一.从几个招聘要求说起
在上一篇中,我举出了一个招聘需求,引起一些朋友的争论。既然招聘的是项目经理,为什么需要那么多专业技能呢?
在百度上招聘频道搜索“软件项目经理招聘”,可以查到8500多条类似的招聘信息。我们看看国内软件行业老大东软集团的招聘条件:
工作职责:
带领团队完成需求分析,开发计划制定与跟踪,项目组关键技术问题解决,负责项目QCD。
岗位要求:
1、3年以上软件开发项目经验,2年以上项目管理经验;
2、熟练掌握JAVA、WEB开发,精通基于Oracle/Mysql数据库的MIS系统开发;
3、具有较强的沟通、组织能力和较好的文字表达、写作能力;
5、有医疗业务开发经验者优先。
显然,东软公司也是要求具有较强的专业技能的。当然,也许东软公司太大了,不具有代表性,那么我们再看一个比较小的公司,你绝对没听过(我也没听过),广东广风隆电子科技有限公司:
任职要求:
1.能很好的把握开发质量和项目进度,规避风险。
2.具有较强的语言和文字表达能力、沟通协调能力、良好的团队合作精神。
3.具备至少3年项目管理经验或大型系统开发实施经验的优先。
4.掌握JAVA技术,能熟练应用J2EE,Spring,Struts,Hibernate等开发和测试。
5.熟悉基于java的B/S架构应用技术。
6.熟悉基于Tomcat、WebSphere、weblogic等应用服务器的开发;
7.熟悉大型数据Orecle/SQL Server等,熟练掌握存储过程编写、数据库表设计。
8.熟悉unix/Linux操作系统。
9.具备软件团队管理经验,熟悉软件开发流程,能够独立完成项目实施的优先。
10.具备一定的系统框架设计、熟悉开发流程,具有的良好的需求分析、项目设计、规划能力。
13.有如下经验者优先考虑:
a.熟悉BIEE,或有BI项目开发实施经验
b.对BI/DW的概念和架构有比较深入的了解,熟悉维度模型架构
c.熟悉Oracle数据库开发,或有ETL工具ODI经验,精通SQL
d.有基于java技术项目管理经验的优先,教育行业背景优先
哇啦啦,这个更不得了。这究竟是招程序员还是招项目经理,我也快被弄迷糊了。看来中小公司比大公司更看重专业技能。
当然,我再多举一千条也代表不了所有的企业。但诸位如果有时间一条条看,会发现绝大部分公司对“软件项目经理”这个职位,都对专业技能有较高的要求。那么,传说中的“外行领导内行”究竟是不是真的?外行真的可以领导内行,带领项目走向成功吗?
二.外行 vs 内行
1. 优势劣势分析
外行和内行究竟谁更适合当项目经理?那些招聘要求似乎已经为我们给出了答案,最少在软件行业内行项目经理更占据优势。然而,外行的项目经理往往也有其独特的优势,比如,他们往往更有大局观,能跳出技术本身看待问题,有更强的领导力等等。事实上,外行领导内行的现象,在国家大型建设工程或科研项目中要屡见不鲜。据说,我国的原子弹工程就是聂荣臻元帅领导的,而聂帅是不懂核物理的。
如果拿外行和内行项目经理来PK,并不是一件容易的事情,因为每一项都不是绝对的,这就如同比较男人和女人谁更适合做厨师一样。当我们拿两者PK的时候,其实包含了一些隐含的信息,就是这个外行的项目经理比内行项目经理,更加懂得管理、情商更高,否则的话,内行项目经理会毫无悬念的胜出,也就没有比较的必要了。
基于这些隐含的信息,我们试着比较一下两种项目经理的优秀和劣势:
项目经理类型
优势
劣势
外行
一般具有更强的领导力,更善于激发员工的士气、战斗力;
一般具有更强的谈判能力、资源协调能力,客户和上级领导满意度会更高;
一般具有更强的沟通汇报的能力;
更容易跳出技术本身,看清问题本质;
一般更善于权衡轻重缓急,更善于取舍。
项目详细计划要依靠技术骨干,对其评估的准确性无法做出自己的判断;
无法对技术人员进行辅导;
无法对技术问题做出分析判断,帮助解决棘手问题;
无法对技术人员进度拖延原因做出准确分析、不能很好控制项目;
容易造成瞎指挥;
容易和技术人员互相看不起对方。
内行
外行的劣势往往是内行的优势
外行的优势往往是内行的劣势
2. 技术决定论的误区
所谓内行与外行是纯粹从技术的角度来看问题,单纯讨论内行好还是外行好,其实也暗含着一个前提,就是技术决定项目的成败。而实际上,一个项目能否成功的影响因素,远不止是技术,对一个项目经理的素质要求也远不止技术。同是外行或内行来带一个项目,会由于个人修养与经验在差异,项目结果可能相差很远。因此单纯说外行好,还是内行好,是没有意义的。
3. 综合素质决定论
问题的关键其实不在项目经理是内行还是外行,而在于他的综合素质。无论是外行还是内行,只要谁的综合素质更高,谁就是更优秀的项目经理。
上一篇我们讲到项目经理的六种能力模型,也就是说,一个优秀的项目经理,应当具备六个方面的素质,即:知识、技能、逻辑思维、执行力、心智成熟和领导力。
在知识层面,包括专业知识、行业知识和管理知识。外行项目经理在专业知识和行业知识方面已经输了,但在管理知识方面按默认值,外行赢了。
在技能导面,包括专业技能和管理技能。外行项目经理在专业技能也又输了,同样管理技能方面,又略胜一筹。
现在打成了平手。剩下的,要拼逻辑思维、拼执行力、拼心智、拼领导力,这就和内行外行无关了,鹿死谁手,要看个人的修养。
因此,项目经理的比拼,拼的不只是管理知识或专业知识这一个方面,而是综合素质的比拼。
三.外行,你凭什么
1. 唐僧的团队
外行,也就是不懂专业知识技术,显然不但不是什么优点,反而是一个项目经理的极大缺陷。那为什么领导还会置这么大的缺陷于不顾,任命一个外行为项目经理呢?换一个角度,也就是说,一个外行,在什么情况下,可以成功的管理一个软件项目呢?
一件事情的发生,总有他的内部原因和外部原因。具体到这个问题上,也有它的内因和外因。
(1)在内部因素上,外行项目经理必须具有更高的综合素质。
现在流行分析西游记中的取经团队,其实也是一个典型的外行领导内行的团队。到西天取经,靠的是降妖服魔的本领,显然唐僧是个外行。但是,唐僧并不是一无是处,相反,他的综合素质很高。他外柔内刚,意志坚定,目标明确,还精研佛法,具有很强的人格魅力,因此他的那些徒弟才能凝聚在他周围,虽历尽千难万险而无悔。
(2)在外部因素上,必须有合理的人才结构作为支撑。
唐僧虽然不会打怪,但是孙悟空可以,补齐了唐僧在这方面的不足。试想,如果他的徒弟都不能降妖,任凭唐僧的领导力再强,显然那也是于事无补的。同样一个外行的项目经理,在他的团队中,必须可以信赖的技术骨干,像孙悟空一样能在关键时候解决问题,这些骨干一般就是项目中的组长、系统架构师或者系统分析师,必要时可能要设置项目副经理之职。如果团队中没有技术骨干,都是一些经验不足还不求进取的程序员,那除非项目超级简单,否则项目经理纵然有诸葛亮的才华,也无济于事。
2. 规模决定一切
在上面两项条件都具备的情况下,只能说明外行可以担任项目经理了。站在项目本身的角度,除了这两项因素,往往还跟以下方面有着紧密的关系。
(1)项目规模:规模越大,采用外行项目经理的机率越高。
(2)项目所在行业:在建筑、施工、水利等传统行业,采用外行项目经理的机率更高。
(3)项目的技术难度:在项目规模不大时,如果技术难度越大,采用内行项目经理风险更小。
(4)项目进度要求:时间要求越紧,更倾向于采用内行项目经理。
(5)项目管理的层次:有些项目层层分包,对于上面次层的公司,项目不需自己实施,只需对项目进行监管,项目经理自然也不需要很强地专业技术了。但对于底层实施单位而言,项目经理懂技术就很有必要了。同样,有些大型项目分成若干个工程,每个工程又包括若干个子项目,也是类似的情况。
在这些因素中,项目规模是具有决定性的因素。项目规模足够大的时候,也就有足够的经费来配备充分的人才。至于其实方面,其实只是表现而已。
四.透过瓶子看软件行业
为什么软件行业外业项目经理相对较少呢?这与软件项目本身的特殊性有一定关系,但在一定程度上也折射出软件行业的现状:
(1)软件项目规模不够大
在软件行业,几十万的项目很常见,几百万上千万就是大项目了,项目的利润率很低,很多中小型企业都生存在赢利的边缘。据工信部统计,2011年上半年我国软件行业利润仅占软件业务收入的1.28%。这么低的利润率,估计比东莞的制鞋厂还不如吧。而几百万上千万的项目,对建设、国防这些行业来说,简直不值一提啊。前几天太极集团1.99亿中标铁道部IT项目,大家都不服气。也是,人人都在喝汤,你凭什么搞特权吃肉?
(2)成熟的项目经理相对紧缺
软件行业小项目太多,对项目经理的需求量是非常大的,与此同时,成熟的项目经理相对很少。所谓“千军易得,一将难求”啊。当然,即使牛B的项目经理有了,其收入要求也不会低,这是小型项目难以承受的,只能退而求其次,找一个性价比更高的项目经理,或都干脆拔苗助长,找一个不错的程序员来带吧。