【老猿说架构】系统架构师的能力模型

简介: 系统架构师的能力模型

大家好,我是老猿,今天继续专题【老猿说架构】,文章仅代表作者观点,如有不同观点论述欢迎拍砖交流。好,废话不说,直接进入主题。

    今天老猿跟大伙聊聊对系统架构师的能力模型的理解,希望有志于成为架构师的童鞋有所帮助和启发。

     在我看来系统架构师主要具备点线面体的专业技术能力、专业的业务能力和缺一不可的技术管理能力这三大核心能力,三者互相结合运用,具体详见下图并看下文的阐述。

11.jpg

能力1:点线面体的专业技术能力

1.1 技术广度、深度和高度

架构师基本都是从一线研发工程师逐步成长起来的, 那么具体到从工程师到架构师岗位能力提升过程来看:

点:能准确理解、分析需求并独立负责一个功能模块的开发。

线:能根据系统设计并负责一个项目中多个功能模块的开发,甚至能独立负责一个子系统的开发。

面:在其所在的领域内可以负责一个产品的整个研发过程,并对业务和技术发展都有洞察和前瞻性。

体:能够带领团队负责多个产品线的研发过程,更高阶的话能够对行业有创新和影响。

1和2属于工程师能力范畴,3和4就是架构师需要具备的能力模型,那么架构师通常通过技术深度、广度和高度上来衡量。

广度:即是技术视野,所涉及的领域包括:数据库知识,计算机系统、网络知识,应用技术框架,系统安全,设计模式,最好精通1-2门开发语言,常用架构方法论,业务领域内的技术应用和发展,文档编写能力等等,这些领域的技术要有全面的了解,能够评估各技术的优缺点,能根据业务需要和技术优缺点来做技术选型。

深度:即是技术内功,要针对所在领域的核心技术有一定的底层掌握。比如熟读源码和深度的测试验证等,就像武林高手一样,有深厚的内功后才能快速融会贯通天下各派武功。

高度:能够理解业务的本质和商业模式、识别业务的风险,对业务和技术发展都要具有前瞻性。

    因此工程师和架构师的区别,一般工程师具备需求理解、分析和程序设计及开发能力,而架构师需要架构设计和架构决策和规划的能力,要能够识别出系统架构中的复杂点、痛点,提供有效的架构解决方案,同时架构师要与人研讨方案的优略,方案的选型,挖掘方案的优缺点,最终选择最合适的方案。

1.2扎实的工程能力

    这个能力好理解,架构师一定是带领或指挥1个团队来共同完成项目目标的,提升研发效率也是架构师的职责之一,那么研发工程流程优化、技术规范、开发工具和架构脚手架等需要架构师制定和落地. 比如开发工具 , 代码审查工具, 项目管理工具的选择、开发流程、技术规范的文档编写制定及最重要的系统架构脚手架的研发落地及维护等等.

1.3 架构设计能力

这点是架构师核心职责之一,即是从业务出发,分析准确把握业务对高性能、高并发、高可用、可扩展、安全等系统容量指标的要求,根据这些要求设计对应的系统架构实现,比如满足高并发高性能的系统架构设计有高性能计算和存储架构实现,例如多级缓存、消息队列削峰填谷或解耦异步处理、数据库分库分表,读写分离等设计实现。就是各种架构设计的套路组合搭配。

能力2:专业的业务能力

2.1懂业务

    系统架构的核心是为了业务服务的, 是要适应业务更快速的发展, 所以架构要合适且能演进,要做到这点就要充分懂业务,理解把握业务的商业模式、发展前景、趋势等, 根据这些做技术方向布局. 同时对业务提出的需求, 要多问多思考需求背后的本质是什么, 来帮助我们识别并解决业务真正的痛点. 对业务的理解不会设计出天马行空不切实际的架构, 所以脱离业务的架构设计都是耍流氓。

2.2 善于业务抽象

    系统架构要设计得好,必须理解业务的基础上有业务抽象建模的能力,也就是最近比较流行的领域驱动设计,只有对业务抽象足够清晰、准确才能设计分解系统的模块、组件以及他们之前如何协作运行。

2.3 业务洞察能力

    业务洞察就是业务进行深入分析、理解,要抓住需求本质,不仅仅是对需求浅层的理解,要不断学习研究业务知识,最好能达到业务专家水平,越靠近越好,这样能提升思维抽象穿透的能力,从而具备有业务和技术发展的前瞻思考,做好一些技术布局等。

能力3:缺一不可的技术管理能力

3.1技术决策能力

    这点也好理解,技术方案拍板是架构师最重要的职责。任何需求都有不通的技术实现方案,那么架构师就要从成本收益、持续发展和优先级等方面的权衡取舍进行架构评审及正确决策的能力尤为重要。

3.2 团队管理能力

    架构师不是一个人战斗,需要带领团队在目标时间内完成项目打胜仗,需要系统分解形成整体架构设计,能够正确地技术选型和制定技术规格说明并有效推动架构设计方案的实施落地。那么管理工作的核心就是管人管事. 管人就要根据团队成员能力特点分工安排. 管事就要管理项目和技术架构方案的落地, 包括项目计划的拆解, 执行进度的追踪, 技术难点的攻克等等.


文/老猿,写代码写诗写职场的程序猿大叔,倾力原创简单实用的硬干货,转载此文请联系老猿

相关文章
|
2月前
|
机器学习/深度学习 自然语言处理 分布式计算
大规模语言模型与生成模型:技术原理、架构与应用
本文深入探讨了大规模语言模型(LLMs)和生成模型的技术原理、经典架构及应用。介绍了LLMs的关键特点,如海量数据训练、深层架构和自监督学习,以及常见模型如GPT、BERT和T5。同时,文章详细解析了生成模型的工作原理,包括自回归模型、自编码器和GANs,并讨论了这些模型在自然语言生成、机器翻译、对话系统和数据增强等领域的应用。最后,文章展望了未来的发展趋势,如模型压缩、跨模态生成和多语言多任务学习。
227 3
|
1天前
|
机器学习/深度学习 编解码 vr&ar
NeurIPS 2024最佳论文,扩散模型的创新替代:基于多尺度预测的视觉自回归架构
本文详细解读NeurIPS 2024最佳论文《视觉自回归建模:基于下一尺度预测的可扩展图像生成》。该研究提出VAR模型,通过多尺度token图和VAR Transformer结构,实现高效、高质量的图像生成,解决了传统自回归模型在二维结构信息、泛化能力和计算效率上的局限。实验表明,VAR在图像质量和速度上超越现有扩散模型,并展示出良好的扩展性和零样本泛化能力。未来研究将聚焦于文本引导生成和视频生成等方向。
22 8
NeurIPS 2024最佳论文,扩散模型的创新替代:基于多尺度预测的视觉自回归架构
|
3月前
|
存储 分布式计算 API
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
140 0
|
2天前
|
存储 消息中间件 小程序
转转平台IM系统架构设计与实践(一):整体架构设计
本文描述了转转IM为整个平台提供的支撑能力,给出了系统的整体架构设计,分析了系统架构的特性。
25 10
|
5月前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
1044 3
|
30天前
|
机器学习/深度学习 测试技术 定位技术
新扩散模型OmniGen一统图像生成,架构还高度简化、易用
近期,一篇题为“OmniGen: Unified Image Generation”的论文介绍了一种新型扩散模型OmniGen,旨在统一图像生成任务。OmniGen架构简洁,无需额外模块即可处理多种任务,如文本到图像生成、图像编辑等。该模型通过修正流优化,展现出与现有模型相当或更优的性能,尤其在图像编辑和视觉条件生成方面表现突出。OmniGen仅含3.8亿参数,却能有效处理复杂任务,简化工作流程。尽管如此,OmniGen仍存在对文本提示敏感、文本渲染能力有限等问题,未来研究将继续优化其架构与功能。
54 16
|
2月前
|
机器学习/深度学习 自然语言处理 C++
TSMamba:基于Mamba架构的高效时间序列预测基础模型
TSMamba通过其创新的架构设计和训练策略,成功解决了传统时间序列预测模型面临的多个关键问题。
202 4
TSMamba:基于Mamba架构的高效时间序列预测基础模型
|
2月前
|
网络协议 网络架构
TCP/IP协议架构:四层模型详解
在网络通信的世界里,TCP/IP协议栈是构建现代互联网的基础。本文将深入探讨TCP/IP协议涉及的四层架构,以及每一层的关键功能和作用。
228 5
|
2月前
|
机器学习/深度学习 存储 人工智能
【AI系统】模型演进与经典架构
本文探讨了AI计算模式对AI芯片设计的重要性,通过分析经典模型结构设计与演进、模型量化与压缩等核心内容,揭示了神经网络模型的发展现状及优化方向。文章详细介绍了神经网络的基本组件、主流模型结构、以及模型量化和剪枝技术,强调了这些技术在提高模型效率、降低计算和存储需求方面的关键作用。基于此,提出了AI芯片设计应考虑支持神经网络计算逻辑、高维张量存储与计算、灵活的软件配置接口、不同bit位数的计算单元和存储格式等建议,以适应不断发展的AI技术需求。
48 5
|
3月前
|
机器学习/深度学习 网络架构 计算机视觉
目标检测笔记(一):不同模型的网络架构介绍和代码
这篇文章介绍了ShuffleNetV2网络架构及其代码实现,包括模型结构、代码细节和不同版本的模型。ShuffleNetV2是一个高效的卷积神经网络,适用于深度学习中的目标检测任务。
125 1
目标检测笔记(一):不同模型的网络架构介绍和代码