一直以来,开发团队的管理似乎都是项目经理的事情,从生命周期管理到人力资源的配置,从进度管理到客户关系管理。其实在开发团队中,还有另一位默默无闻的管理大师——架构师。
【51CTO独家特稿】管理被很多开发人视作“虚”的东西,平时程序员也不会去钻研管理的学问。身为程序员中的领路人,架构师一般也被认为依靠人格力量进行管控,更多的是以理服人。可以说在现阶段的中国,很大程度上还处于泰勒的科学管理阶段,员工只需要机械,高效的完成工作即可。
下面是泰勒的相关理论:工作定额原理、挑选头等工人、标准化原理、计件工资制、劳资双方的密切合作、建立专门计划层、职能工长制、例外原则。仔细思考过后,这些东西有很多与现在的工作相似。就拿工作定额和挑选头等工人来说,每位程序员的工作量都是订好的,工资标准也是按照技术最好的“大拿”来做对比。至于人性化管理,满足更高层次的需要,很多项目经理现在还考虑不到程序员的要求,项目经理就是泰勒理论中的职能工长而已。
作为一名优秀的架构师,比较迫切的管理任务可能就是开发成本与收益平衡的问题。举例说,采用MySQL做数据库与采用Oracle做数据库,价格肯定有很大差距。但是究竟该采用何种技术,架构师需要仔细权衡用户的报价与本公司收益率的问题。又比如说采取甲技术开发出的软件,界面大方性能一般,但是需要耗费程序员更多的劳动时间,那在有些场景下就不如采用乙技术快速开发后节约的大量人力成本,尽管界面有些难看。
因此,架构师在管理和控制的能力上,需要有自己独到的见解,而不是简单的认为这是项目经理或者财务部门的事情。身为技术专家的架构师,随不需要处理那些烦杂的日常管理。奇虎架构师李钊在一次接受采访时道出过架构师们的心声,技术人才转向管理就是莫大的浪费。对,如果架构师只是一味的去进行项目管理,那就和其他市场人员没有任何区别了。在这里架构师所需要的管理与控制,其实是从技术的角度,对一些问题的控制,特别是开发过程中的监控,而不是普通意义上的纯粹管理。
在51CTO架构师系列选题文章中,有一篇是讲沟通能力的文章,其实这就是一种“管理”。通过这样的管理,能增强技术团队内部的团结。安全监控也是架构师的重要职责,负责监督整个开发过程中可能出现的问题,在出现问题后还要牵头及时解决问题。这里我们讲到的管控能力,就是这种内部团结的实现,是一种对于程序员人格尊重的实现。马斯洛的五种需求理论中,就有“被尊重的需求”,程序员在一个感觉轻松,被尊重的环境中,其潜在的创造力是难以预料的。
马斯洛五种需求是良好管理的根基
良好的驾驭管理开发团队的能力,能够让架构师在开发项目中游刃有余,不会出现意料之外的干扰。而对于程序员来说,愉悦的开发环境,不光是一个好心情,更能写出优美的代码。当然要做到这一点,架构师自己要有良好的人格修养,能从内散发出人格魅力。另外良好的技术内功也是必备条件,要能让程序员们心悦诚服的接受架构师的领导,而不是发出“架构师一行代码都不会写!”的质疑。
本文为《架构师害怕程序员知道的十项技能》中的管控能力