background image

软件构架师需要什么技能?

作为项目的技术主管,构架师的技术需要非常的广泛,这比技术深度更加

重要(当然构架师在特定的领域需要一定的技术深度)。

 

软件构架师是技术主管

  首先,软件构架师是技术主管,这意味着除了他要有技术上的技能外,还
要有很好的领导才能。构架师的领导能力在团队中和项目质量控制中起着十分重

 

要的作用。

  在团队中,构架师是项目的技术总管,他需要有丰富的知识背景,以便作
出技术上的决定。相对于构架师来说,项目经理是来管理项目的资源,时间进度
和花费的。使用电影制作来做类比的话,项目经理就是制片人(他要确定工作被
完成了),而构架师是导演(他需要确定工作被正确的完成)。由于他们在项目
中所处的位置,构架师和项目经理是公众人物,在一个团队中,他们是整个项
目所涉及的所有人员的联系枢纽。构架师应该为建立软件构架争取投资,并且要

 

明确建立软件构架能给组织带来的价值。

  构架师还要把团队组织在构架周围,并且要积极地投入到计划活动上,因
为要把构架转化成为完成任务的先后顺序,这样才能及时地确定在什么位置需
要什么技术。有一点需要注意,由于构架师能否成功与团队的整体水平有很大关

 

系,所以构架师应该参与团队新成员录用的面试。

  根据构架师所拥有的能力,他可以同时参与其他团队的工作。构架师需要根
据具体的实例情况来做领导决定,并且在决定过程中要展现出足够的自信。一个
成功的构架师是以人为导向的,并且像一个教练一样给他的团队安排工作时间。
这对于小组的成员来说是有好处的,他们可以及时得到帮助。这是整个团队的一

 

个巨大财富。

  构架师还要把精力放在切实工作的交付上,他是技术方面的推进力量。构架
师需要做决定(经常需要在压力下做决定),并且要保证这些决定是经过成员

 

之间的交流的,并且确保它能够执行。

 

架构师可能是有一个小组来完成的

  下面介绍一个人和一个角色的区别。一个人可以扮演很多角色(例如,
Mary 是一个开发人员,同时也是一个测试人员),同时,一个角色可以有很
多的人扮演(例如,

Mary 和 John 都是测试人员)。构架师的角色需要非常广

泛的技术,这就为什么构架师的角色经常是很多人同时担当。这样可以使技术知
识在小组中传播开来,每一个人都把他的或者她的经验带到工作中。特别是当某
种技术同时被商业部门和技术小组理解的时候,这项技术就会最大程度的传播