软件架构设计师最重要的素质有哪些?

如题所述

笔者目前是知名互联网公司的架构师,曾经设计过多个产品的整体架构。我认为软件架构设计师最重要的素质主要分为两方面:其一,技术能力;其二,软实力。软实力与技术两手都要硬,而技术是基础。

技术能力

技术能力是互联网从业者的基本能力。而作为软件架构设计师,不仅需要技术深度,也需要技术广度,还需要战略高度。

成为架构师需要较长时间的一线开发经验的积累。如果单看工作年限,一般3到5年可以成为初级架构师,5到8年可以成长为中级架构师,8到10年以上可以成长为高级软件架构师,那么现实情况下,具体达到何种水平还要看架构师的实际能力。

一般架构师在技术上主要做如下几件事情:

1.领域建模

软件开发领域的建模,主要考验架构师的抽象思维。普通工程师通常用代码思考,思维局限在实现、战术的层面,考虑的基本上是某个功能模块的实现细节。而架构师需要负责整个系统的架构,尤其是涉及到一个全局的整体设计,所以需要高屋建瓴,需要在高层、上层的战略层面进行思考。

2.技术调研选型

架构师往往能够决定所带领团队的技术选型,选用最优技术组合来进行系统的高可用、高性能架构设计。

3.系统分析与设计

系统分析与设计的主要技术手段是建模,两者高度重合。

软实力

其实除了技术能力,软实力也必不可少。

1.沟通能力和自我表达能力

沟通能力是基本中的基本,最为重要,最为普遍的素质。技术人员好像容易忽略,想成为架构师就不能忽略。因为架构师要做的第一件事就是与团队成员、项目经理、客户认同沟通,获得认同。

2.一定的魄力和感染力

架构师要与很多人打交道,其中不乏领导,刁钻的客户,技术狂人。而架构师是有职无官,但又要推动整个团队的技术进展,能在压力下作出关键性的决策,并将其贯彻到底。这就需要架构师具有一定的魄力和感染力,依此来排除工作过程中一些个人情绪带来的影响,从而保证工作顺利进行。

3.广阔的知识面

架构师的职责有些特殊,多少有点需要创新的要求。虽然有很多现成的架构,但放到具体行业又有不同,不能生搬硬套。那么这时候你就需要专业的架构知识,丰富的业务领域知识,开阔的眼界。

4.多方位思考分析的能力

收集到客户需求和技术团队的反馈后,就要求架构师能够对这些资料进行系统分析,制订可行的解决方法。不仅要求你要从客户的角度考虑,也要从开发,机器等多方面考虑。这就要求架构师具备一定的抽象思维和多方位分析的能力。

除了上面的技术能力和软实力,还需啊哟架构师承担主要的责任,更深入地参与到项目中去。

温馨提示:答案为网友推荐,仅供参考
相似回答