infoq 架构师理论 架构师专栏_人工智能

图片来源:pexels.com

1

架构师承担什么样的责任

记录片《黑猩猩的守护者》中珍妮·古道尔博士说过:「唯有了解,才會關心,唯有關心,才會採取行動,唯有行動,生命才有希望」,套用到架构师身上“唯有了解,才会关心,唯有关心,才会采取行动,唯有行动,才会有结果”。

做架构师首先要知道自己承担什么样的角色和职责,之后才能构建自己的知识体系用于辅助决策和指导实施。不同的企业对架构师工作的要求不同,有些企业没有设置架构师岗位,相关工作有需求或开发人员承担,按照架构师所从内容侧重点不同架构师可以分为:

  1. 业务架构师(Business Architect)
  2. 技术专项领域架构师(Domain Architect)
  3. 技术架构师(Technology Architect)
  4. 企业总体架构师(Enterprise Architect)
  5. 项目层面的技术架构师(JAVA 架构师、 .NET 架构师)

2

架构师的核心能力

架构师的经验很重要,因为只有经历过才能更深入的理解痛点以及表面繁华背后需要填的坑,比经验更重要的是要具备深入思考的能力,时常对从事的专题领域的进行经验总结,才能跳出本位看全局,不断提升自己的判断和分析的能力。

在做分析或经验总结时,一般采用结构化思维方法;

1. 首先梳理目标,清理目标与自己或将来发展的关系;

2. 其次做现状分析,知道自己有什么、缺什么以及分析与目标的差距,眼下首要的任务是什么;再次是路线与措施分析,并制定保证有效执行的方案;

3. 最后是下定决心以较高的执行力来实践。

4.沟通能力也很重要,在执行决策前,先与分析相关干系人的诉求,并协调其合作要比单纯的编程能力更为重要。

5.架构师也需要具备一定的商业头脑,只有这样才能很好地理解企业战略目标,制定能够赢的技术路线与之匹配。

以传统企业几年前的服务整理为例,

目标:改善现在的无序现状,建立服务及交易标准,构建符合企业发展需要的 SOA 服务平台,为业务的灵活多变提供支撑;

现状:企业开业多年积累了大大小小几百个系统,因为建设之初上线时间卡的比较紧,大部分是采购成熟的基于垂直架构体系的商业套件,长期下来系统如烟囱一样一个一个建立,为了解决信息孤岛,采用了系统集成方案,在执行过程中因为接口缺少统一管理,系统边界、模块间之策不清。运维过程中需要相关或无关的人员一起参与进来才能定位问题,问题排查慢、耗费大量人力。眼下最重要的是先建立服务及交易规范,规范新建系统对接,并指导历史系统改造。

路线:如何执行是需要好好规划的,如下图“面向 SOA 的企业架构”就是执行前需要考虑的方方面面:

infoq 架构师理论 架构师专栏_infoq 架构师理论_02

考虑到企业已经积累了大量接口,接口改造和测试耗费巨大周期长,而且部分系统是外包的源码控制力弱,目前团队人员等因素,需要分阶段执行。

第一阶段,通过统一的服务总线和监控平台实现交易的监控, 比较适合企业现状,选择比较成熟的产品加经验丰富的实施商(ps:根据以往经验有的时候,有经验的实施商比产品重要),进行交易线服务接入接出规范制定并进行服务接入;

第二阶段,深入服务治理,一些基础服务下沉为平台、流程服务归入 BPM、提高可管理性为服务主动管理和预警提供有效手段。

infoq 架构师理论 架构师专栏_infoq 架构师理论_03

3

架构师的知识管理

架构师的知识面很广,需要快速的学习知识、快速的掌握并运用、经常将知识沉淀为经验并分享给伙伴、督导团队执行并创新。关于如何构建自己的知识体系建议:

  1. 保持好奇心和阅读习惯坚持做笔记、
  2. 深入思考问题背后根源,学习和掌握方法论
  3. 经常与人交流或查看牛人博客
  4. 经常总结并分类管理与分享

下面的表格是几年前在没有使用 APM 类监控工具时人工排查问题排查列表,“知识积累部分”就是用来对常见问题进行分类保存,并时常归纳总结,经验是最好的老师。

infoq 架构师理论 架构师专栏_大数据_04

P.S:《你的知识需要管理》中对知识管理的五部分:学习,保存,共享,使用,创新,有深入的介绍。

4

架构师的问题解决能力

专业主义,架构师的好奇心比较强,喜欢解决问题。然而做技术容易先入为主,会觉得技术重要性第一,比方下面的故事:

你所在的项目接到一个新的接口开发需要,作为架构师你如何处理?”

不要往下看,先考虑下……

建议的思维方式:要不要做、应该谁来做(涉及到系统边界问题)、如何做、什么时候做合适、做了对将来有什么影响……等

作为技术管理者,架构师应在不同的场景内跳入、逃出,大格局着眼,细节入手,并时时总结,尽量规避先入为主的执行思维(如:首先考虑使用协议、接口规范、如何执行、要多久才能完成、如何规避风险……等)。

架构师,特别是一线架构师经常会作为技术专家来支持问题的解决,下面是以往问题经验的总结:

infoq 架构师理论 架构师专栏_编程语言_05

5

对传统企业上微服务的看法

避免新瓶装旧酒,综合考虑组织架构和团队技术水平,企业文化等因素,如果企业的服务治理还在初级水平,那么还是先着手解决眼下关键问题。如果想大胆创新,那么一定要做好规划分析——因为新技术不只解决问题也会带来很多新的问题。

infoq 架构师理论 架构师专栏_infoq 架构师理论_06

6

推荐书籍

《简单逻辑学》、《知道做到》、《你的知识需要管理》、《架构即未来》、《企业应用架构模式》、《软件架构师应该知道的 97 件事》、《代码大全》。

7

关于作者

孔庆龙,一线架构师,多年金融保险集团企业架构经验。精通 SOA、服务治理、系统优化