如何才能成长为一个架构师?

news2025/1/1 11:05:55

很多技术小伙伴都在问我,架构师是不是很牛逼,那么为什么自己不能成长为一名优秀的架构师呢?而总是作为工程师资源被项目打包带走,并周而复始的完成领导的业务开发需求任务。

架构师的工作职责? 

为了方便技术小伙伴理解架构师的工作职责,我这里拿一个具体的项目来分析,比如你们公司要开发一个电商项目,而公司的主营业务为短视频或者直播,也就是这个项目需要完全的从0到1的去落地。

作为这个项目的架构师,你的职责是什么呢?

(1)你要将电商项目的雏形搭建起来,也就是说你要利用架构元素,将电商项目的整个架子给画出来,并配合产品经理和需求方去给技术开发人员做业务功能和技术的布道,并让他们知道该做什么,如何去做,怎么去落地等思路,也就是这个是架构师必须要完成的工作。

至于怎么去完成,每个架构师都有自己的方法论,但最终的目的是一致的,那就是需要你架构师从架构的视角去解释这个电商项目,并让技术开发都懂你的架构理念。

(2)你要将需求方和产品侧的需求原型转换为技术开发人员可以理解的架构图,比如功能架构、服务架构等,也就是说你要解决这个电商项目从需求到任务,再到开发工作量的转换,让技术人员更加熟悉自己工作内容,其实真正的高手架构师,他做出来的架构,就算是一个初级工程师,比如一年左右的新人,他拿到你的需求和任务,他也会很快的参与落地项目,这个就是衡量架构师架构水平的最高标准,你做的每一件事情就是为了让相关责任方都能够理解架构和需求,从而发挥开发人员最大的能动性,并提高项目落地的效率。

(3)你要能够快速的完成项目相关技术的选型,且要求快准狠,也就是说你的技术选型原则上来看,应该是拿来主义,也就是需要从你自己的技术库中顺手拈来,而不是靠别人去做技术调研。当然这个也是衡量架构师水平的一项硬性指标,原则上讲,一个优秀的架构师也是某一个领域的技术专家,也就是说架构师必须要具备很强的技术硬实力,他才有资格去做一个实干型的架构师,而不是虚头巴脑的理论派。

(4)你要能够Hold住这个电商项目,也就是说你需要项目中的技术开发人员能够服你,换句话说,你要具备绝对的权威。

当然这个权威并不是靠一个职级去压出来的,而是靠你的技术领导力,去取得技术开发人员的信任,让他们依赖你,并按照你制定的项目架构计划去落地,大概率都是没问题的。

这个信任并不是靠一两件事能够获取的,而是需要架构师在日常工作的过程中就能体现出“问题终结者”的角色,让技术开发人员觉得,任何技术和业务问题,到你这边都能够解决,并且还总是能够找到当下的最优解。

(5)你要能够做电商项目的长期规划, 这个其实很好理解,那就是你应该非常的清楚功能和技术的取舍,也就是我们常说的技术革新和业务功能占比的平衡。但是你必须要有一个非常清晰的项目的技术和业务发展的演进路线。很多人或许会问,这些事情不是该技术负责人去解决的吗?这里就告诉大家,技术负责人主要还是解决项目资源问题,也就是说他需要架构师去辅助他,完成项目的落地,那么架构师就应该非常清晰的给他阐述出项目的演进路线,并一起拍板完成项目的规划,从而更有效的去管理资源,比如技术开发的技术和业务储备以及开发的培养和纳新等。

(6)你要想尽一切办法让技术开发人员和技术负责人觉得你的角色是非常重要的,而不是可有可无的。

其实这个也是很多架构师非常头疼的事情,架构师很容易被边缘化,这个是很多业务产品团队都会碰到的问题。当一个架构师没办法参与到核心业务项目中,并贡献自己的架构经验,帮助项目去高效的落地,那么这个架构师很可能会被边缘化,最终就会出现高开低走的局面,最终的结果就是人走茶凉,一地鸡毛。

架构师是拼出来的,而不是指派的?

很多技术小伙伴其实都会有这样一种疑惑,那些公司中优秀的架构师,难道真的是天生就是架构师的料,他一开始就是做架构师,且还不用参与业务项目中代码的落地吗?

答案是否定的,一个优秀的架构师绝对是靠业务和代码堆出来的,也就是他以前肯定是一个业务和代码高手,当然个别例外哈(一些水货)。

架构师必须是从业务产品线中培养出来的,才会接地气,否则肯定是空中楼阁,让人看不明白他的架构理念。

说了这么多就是想告诉大家,架构师是自己评出来的,而不是领导指派的。你能力强,技术和业务都强,落地能力强,项目实战能力强,自然你就成为团队中的架构师,水到渠成之后,你的领导只需要官宣一下就行。

架构师来源于业务,因此业务的规模和复杂度非常的重要,这个也是我要说的“为什么大厂出来的架构师那么吃香的原因”,一个优秀的架构师必须要有一个超大规模的业务产品去滋养。

一个优秀的架构师必须要参与足够多的大型项目的落地,他才能积累更多的,且让人信服的架构经验。

程序员如何成为架构师? 

一个程序员如何让自己成为架构师,这个是没有捷径的,但是你必须从日常的代码工作中去寻找突破口。

首先,你一定要聚焦于你现有的项目,也就是你一定要理解你做的业务,无论它是否复杂,但是你一定要将它展开,看看行业类的其他竞品是如何做的,并从全局的角度去看业务,从而转换为架构元素。

其次,你一定要有自己专业的技术栈,也就是你必须要有自己拿得出手的技术,比如微服务架构(Spring Cloud Alibaba等技术),当然这些不仅仅是会用,而是真正的将这些技术变成自己的工具。

最后,一定要会展示自己的能力,也就是你要学会布道自己的技术水平,并在团队中推广自己的架构理念,从而提高自己的影响力,这样你才会有机会成为一个架构师。

架构师必须要会沟通,假如你只想搞技术,那么你也可以专心的做技术,成为一名技术专家。

 另外我的新书RocketMQ消息中间件实战派上下册,在京东已经上架啦,目前都是5折,非常的实惠。

https://item.jd.com/14337086.html​编辑https://item.jd.com/14337086.html

RocketMQ消息中间件实战派上下册”是我既“Spring Cloud Alibaba微服务架构实战派上下册”之后,又一本历时超过1年半的巨无霸技术实战类型的书籍。

为了提高读者阅读本书的体验性,本书总共设计了十个特色,下面我一一的给技术小伙伴阐述一下。 

【特色一】由浅到深

本书将RocketMQ的技术原理和最佳实践体系化,按照由浅到深的顺序呈现给读者,使读者可以按照章节顺序按部就班地学习。当学习完全书内容之后,读者不仅能熟悉RocketMQ的核心原理,还能充分理解RocketMQ的“根”。

【特色二】技术新

本书不仅包括RocketMQ4.x4.9.2版本)的核心原理分析和最佳实践,还包括RocketMQ5.x5.1. 0版本)的新特性分析和最佳实践。

【特色三】精心设计的主线:零基础入门,循序渐进,直至彻底掌握RocketMQ

本书精心研究了程序类、架构类知识的认知规律,全书共分为6篇:基础;进阶;高级;高并发、高可用和高性能;应用;新特性,是一条相对科学的主线,让读者快速从“菜鸟”向“RocketMQ分布式架构实战高手”迈进。

【特色四】绘制了大量的图,便于读者理解RocketMQ的原理、架构、流程 

一图胜于文,书中在涉及原理、架构、流程的地方配有插图,以便读者更加直观地理解。

【特色五】从架构师和技术专家的视角分析RocketMQ 

本书创造性地分析了RocketMQ具备高并发、高可用和高性能的功能及原理,并从架构的视角展开分析,这些也是程序员进阶为技术专家或架构师必备的技能。

以下为从架构师和技术专家的视角分析RocketMQ典型案例,读者阅读完本书之后,也能够达到这样的水准。

【特色六】不仅有原理分析,还有大量的实战案例 

本书介绍了大量的实战案例,能让读者“动起来”,在实践中体会功能,而不只是一种概念上的理解。

在讲解每一个知识模块时,我在思考:在这个知识模块中,哪些是读者必须实现的“标准动作”(实例);哪些“标准动作”是可以先完成的,以求读者能快速有一个感知;哪些“标准动作”具有一定难度, 需要放到后面完成。读者在实践完书中的案例之后,就能更容易理解那些抽象的概念和原理了。

本书的目标之一是,让读者在动手中学习,而不是“看书时好像全明白了,一动手却发现什么都不会”。通过体系化的理论和实战案例去培养读者的主动学习能力,这样本书的价值就会被最大化。 

本书相信“知行合一”的理念,而不是“只知,而不行”,避免开发人员出现眼高手低的现象。尤其是在技术面试过程中,面试官更加看重的是既懂原理,又能够主动是实践技术的技术人。

【特色七】深入剖析原理 

 本书以系统思维的方式,从业务功能视角剖析 RocketMQ 底层的技术原理,使读者具备快速阅读 RocketMQ 框架源码的能力。读者只有具备了这种能力,才能举一反三,实现更复杂的功能,应对更复杂的应用场景。

 【特色八】从运维的视角分析 RocketMQ 的最佳实践

【特色九】参与开源 

 本书向读者展示了如何修改 RocketMQ 源码,并快速验证案例分析。这样,读者可以从中学到参与开源的技能,并为后续自己能够参与开源做准备。

【特色十】双色印刷,读者体验会更好 

为了提高读者阅读本书的体验,在有上下两册的前提下(巨无霸,超过800页),出版社不吝啬印刷成本,依然采用双色印刷。

【推荐】本书的最佳学习路径 

 为了提高读者学习RocketMQ的效率,我这边结合我自身从RocketMQ小白到RocketMQ专家的经历,为读者汇总了一条最佳学习路径。

【寄语】作者寄语 

RocketMQ是我深度参与研究的一款开源消息中间件,无论是从源码,还是架构场景,我都提炼了很多最佳实践。

在开源领域,技术小伙伴可以使用的开源消息中间件非常的多,比如KafkaPulsar等,我之所以选择研究RocketMQ,除了工作内容和角色需要之外,更多的还是自己感兴趣,因此我建议技术小伙伴一定要先培养自己的兴趣,兴趣才是提升技术硬实力的第1要素。

当然我并不止研究了RocketMQ,还研究了PulsarKafka等(包括开源消息中间件生态中的主流框架),只是本书作为一本关于RocketMQ实战派的书籍,我必须要以RocketMQ为主。

假如技术小伙伴想成为Java领域的架构师或者技术专家,我强烈建议你去研究RocketMQ,它会给你带来很多意想不到的技术和架构方法论的收获,这个也是我写本书的主要目的之一。

建议技术小伙伴按照本书设计的学习路线,逐章的去阅读和实战,这样学习效果会更好。

如果技术小伙伴有技术交流的,可以通过博文视点官方的读者群找到我的联系方式,并与我沟通,我会实时的解答读者的疑问。

本文公众号“架构随笔录”

本人视频号“架构随笔录”

【博文视点】2021年度优秀作者

2021年我和博文视点合作了一本技术类型的书籍“Spring Cloud Alibaba微服务架构实战派上下册”,它是我涉足知识输出领域以来的第一本书,同时它也是我自己积累的技术池中部分技术的产出。

为了写好那本书,我几乎花费了所有的休息时间,并主动的承担了书的售后技术辅导和咨询的职责(几乎是有问必答,坚持了整整两年)。

所谓有付出总会有回报,Alibaba这本书的销量还不错,我也因此获得了博文视点颁发的2021年度优秀作者。

我很清楚,这个是博文视点为了鼓励我继续去用心写书,因此我又花了接近1年半的时间去写了RocketMQ消息中间件实战派上下册这本书。

所谓一分耕耘一份收获,我将我对RocketMQ的理解体系化的输出给喜欢技术的技术人,希望真的对大家有帮助。

 【博文视点】2023技术成长领路人

2022年,我开始涉足技术直播和技术讲师领域,并和博文视点合作几次技术直播,直播效果还不错,再加上我孜孜不倦的布道“Spring Cloud Alibaba微服务架构实战派上下册”这本书相关的技术,并且这些技术都是有助于“技术人”快速成长的,因此也获得了博文视点颁发的“2023技术成长领路人”这个技术奖项,这个奖项也是为了鼓励我继续通过技术直播的方式给技术人去布道技术,因此只要我有时间,我就会孜孜不倦的去讲和聊技术。

【四维口袋】2022 KVP最具价值技术专家 

2022年,我开始涉足企业培训和相关技术直播,并和“四维口袋”合作了几次技术直播,并荣获了2022 KVP最具价值技术专家的技术奖项。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1364202.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

带修莫队 P1903 题解

Part # 0. 前言 \text{Part \# 0. 前言} Part # 0. 前言 这个蒟蒻刚学带修莫队,所以 介绍带修莫队的部分比较简略,大家可以去参考一下 OI-wiki 或者其他大佬的博客:) 本文参考了洛谷题解。 Part # 1. 带修莫队 \text{Part \# 1.…

OSPF 路由协议原型系统设计与实现

1.题目描述 参考计算机网络教材 164 页 OSPF 路由协议工作原理,在此基础上,实现一个简单的原型系统。主 要完成工作有:路由节点泛洪发布本地节点的链路信息,其它节点接收信息,构造网络拓扑,然后利 用 Dijk…

Linux第18步_安装“Ubuntu系统下的C语言编译器GCC”

Ubuntu系统没有提供C/C的编译环境,因此还需要手动安装build-essential软件包,它包含了 GNU 编辑器,GNU 调试器,和其他编译软件所必需的开发库和工具。本节用于重点介绍安装“Ubuntu系统下的C语言编译器GC&a…

如何解决找不到mfc100u.dll无法运行程序问题,分享四种靠谱的方法

在日常使用电脑的过程中,我们可能会遇到各种问题,其中之一就是找不到mfc100u.dll的困扰。这个问题主要是因为mfc100u.dll是Microsoft Foundation Class(MFC)库中的一个版本特定的DLL文件,它是Visual Studio 2010及更早…

java 音乐会售票平台系统Myeclipse开发mysql数据库struts2结构java编程计算机网页项目

一、源码特点 java 音乐会售票平台系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助struts2框架开发mvc模式,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发 环境为TOCAT7.0,Myeclipse8.5开发,数据…

Video classification with UniFormer基于统一分类器的视频分类

本文主要介绍了UniFormer: Unified Transformer for Efficient Spatial-Temporal Representation Learning 代码:https://github.com/Sense-X/UniFormer/tree/main/video_classification UNIFormer 动机 由于视频具有大量的局部冗余和复杂的全局依赖关系&#xf…

企业一线员工定岗定编全解析

引言:在生产制造企业中,由于一线员工工作内容单一,与产量线性关系明显,因此针对一线员工的定编方法最简单有效的就是通过数据计算的方式。人力资源专家——华恒智信根据多年以来对生产制造企业定岗定编的关注与研究得出的经验&…

第7章-第5节-Java中的比较器comparator和泛型的简单说明

1、 引入 上个章节中我们在使用TreeSet保存自定义数据类型的时候,类必须要实现Comparable这个接口,然后重写CompareTo这个方法,这个必须是在具体的自定义类内部去写,有时不方便,每遇到一个都要在那个类内部去写这个Co…

如何把电脑中的项目快速传进Github中?

一、打开GitHub网站:https:github.com 登录自己的个人账号 1.新建一个项目 2.用鼠标直接拖拽电脑中的项目文件夹与文件到新创建的项目中点击保存即可。

Xfs文件系统磁盘布局

目录 一,CentOS下Xfs文件系统的安装 二,准备工作 三,AG结构 四,AG超级块 五,AG空闲磁盘空间管理 六,ABTB的Btree 七,ABTB/ABTC的节点块管理 八,inode节点管理 九&#xff0…

Redis 键中冒号的用途是什么?可以使匹配查询更快吗?

Redis 键中冒号的用途是什么在Redis中,冒号(:)用作键的分隔符,它的主要作用是创建层次结构和命名空间。通过在键中使用冒号,可以将键分为多个部分,从而更好地组织和管理数据。 以下是冒号在Redis键中的用途…

PyTorch|构建自己的卷积神经网络——卷积层

在构建我们的网络时,我们需要用到卷积层提取特征,来看到一些特别的东西,当图片经过卷积层,图片尺寸一般会变化。 当我们构建网络时,我们需要确定各个层的参数,而这些参数,则是要提前计算的&…

【Python常用函数】一文让你彻底掌握Python中的numpy.append函数

大数据时代的到来,使得很多工作都需要进行数据挖掘,从而发现更多有利的规律,或规避风险,或发现商业价值。而大数据分析的基础是学好编程语言。本文和你一起来探索Python中的append函数,让你以最短的时间明白这个函数的原理。也可以利用碎片化的时间巩固这个函数,让你在处…

【数据分享】2024年我国主要城市地铁站点和线路数据

地铁站点与线路数据是我们经常会用到的一种基础数据。去哪里获取该数据呢? 今天我们就给大家分享一份2024年1月采集的全国有地铁城市的地铁站点与线路数据,数据格式为shp,数据坐标为wgs1984地理坐标。数据中不仅包括地铁,也包括轻…

软件测试|深入理解SQL RIGHT JOIN:语法、用法及示例解析

引言 在SQL中,JOIN是一种重要的操作,用于将两个或多个表中的数据关联在一起。SQL提供了多种JOIN类型,其中之一是RIGHT JOIN。RIGHT JOIN用于从右表中选择所有记录,并将其与左表中匹配的记录组合在一起。本文将深入探讨SQL RIGHT …

x-cmd pkg | you-get - web 媒体内容下载工具

目录 简介首次用户功能特点竞品和相关作品进一步阅读 简介 You-Get 是一个开源的命令行小型下载工具,用于从各种网站下载视频、音频和其他媒体文件。 它可以解析和下载嵌套在网页中的媒体,能从 YouTube、优酷、Niconico 、bilibili 等热门网站下载视频、…

leetcode:1108. IP 地址无效化

一、题目 二、函数原型 char* defangIPaddr(char* address) 三、思路 本题通俗来讲就是将字符串中的 . 替换为 [.] 先遍历字符串得出有num个 . 且申请 len 2*num 1 个char空间ans。len是原字符串长度,2*num是[ ]的个数,1是 ‘ \0 ’ 的空间。 …

STL——vector详解

目录 💡基本概念 💡存放内置数据类型 💡存放自定义数据类型 💡存放自定义数据类型指针 💡vector容器嵌套容器 💡vector构造函数 💡vector赋值操作 💡vector容量和大小 &…

Linux基础命令@grep、wc、管道符

目录 grep概念语法作用演示一演示二演示三,带选项 -n wc概念语法作用wc,不带选项-c,统计字节数-m,统计字符数-l,统计行数-w,统计单词数 管道符语法作用演示一演示二演示三演示四演示五 总结 grep 概念 gre…

十一、工具盒类(MyQQ)(Qt5 GUI系列)

目录 ​编辑 一、设计需求 二、实现代码 三、代码解析 四、总结 一、设计需求 抽屉效果是软件界面设计中的一种常用形式,可以以一种动态直观的方式在有限大小的界面上扩展出更多的功能。本例要求实现类似 QQ 抽屉效果。 二、实现代码 #include "dialog.…