下一站:架构师,请从这里上车
创作时间:2022年1月22日 清晨
我的目标:助力100万程序员快速成长如果架构师是你的目的地,本篇文章就是你前进的地图
1你根本不了解自己的目标
只会盲目前行,不辨别方向,不学习方法
大多数程序员都想成为架构师,这是一种技术追求、也是解决经济问题的重要手段。
但是你真的了解你的目标吗?请先回答我五个问题。
1、架构师的职责是什么?
2、企业为什么需要架构师?
3、架构师与程序员、技术大佬的区别是什么?
4、架构师应该具有哪些能力?
5、成为架构师有哪些方法,应该怎么做?
对这些问题似乎知道又不知道,我们总是这样,对自己的想成为的人或想做的事模模糊糊,缺乏清晰的认识,认为只要天天闷头写代码、做项目,只要任劳任怨,勤学苦练,一切都会水到渠成。
其实做一切事情都是有方法、有步骤的,如果你不清楚你要成为什么样的人,以及怎样成为这样的人,就会不断的错失人生当中一个又一个的机会,在不断的试错中浪费一分又一秒的时间。
当别人在跑步的时候,你还在泥坑里打滚。
认真的把这篇文章看完,这也许是你成为架构师之前,最重要的一堂课
2
架构师的职责是什么
很多人认为,架构师就是技术特别好的大佬,能够完全靠自己手写出一套系统,甚至能够轻松设计出微信、支付宝、这样的系统,高并发、高可用手到擒来,随随便便能够解决各种问题,这种想法是完全错误的。
对于不同的场景、不同的问题给出对应的解决方案,突破技术瓶颈,技术选型,奠定底层框架,性能调优等等,这只是架构师的工作内容之一,这也是引起误会的重要原因。
架构师是需求与开发之间的桥梁,它并不是一个纯技术岗位,表面上离技术更近一些,因为架构师都是从一名普通的开发人员成长起来的。
架构师往往需要具有深厚的技术功底,对于技术有一定的深度和广度,更加注重底层原理,并且能够融会贯通,具有自己的一套知识体系,如果只是照搬理论,就成了死记硬背。
架构师的职责除进行业务分析、系统架构、分层设计外,很大一部分职责在于双向传播,向上汇报系统的构建方案,向下传达系统建设方法,也就是清晰准确地让公司上层领导和下层员工了解自己的思想和意图。
向上汇报更多的是站在宏观视角,在非技术层面、合理性层面、成本层面考虑,让公司上层领导清晰直观地了解团队要做一个什么东西、打算怎么做、需要投入多少资源、能够带来什么效果。
在公司内,任何工作能够得以顺利执行,都必须得到公司上层领导的支持和认同。
架构师往往需要协调多个团队、多个部门的开发人员相互协作来进行系统实施,涉及任务的分配、设计的评审、人员的管理等。
可以说,架构设计能力、系统研发能力只是技术技能。此外,如何规划自己的架构师职业生涯、组织协调能力、汇报能力、管理能力也十分重要。毕竟架构师不可能凭借一己之力,实现一个庞大的企业级系统。
当你看到这里,还认为技术可以决定一切吗?
3
企业为什么需要架构师
资本永远是逐利的,企业是否需要架构师这个岗位,完全取决于它能够为企业带来的价值。架构师属于高级职位的原因,就在于它能够为企业带来的价值远远要大于一个技术牛人。
架构师的重要之处在于,将抽象的东西具体化,让复杂的事情简单化,让众多部门、人员清楚自己的职责,有序地实现各自部分的系统功能,最终形成一个大而完整的系统。
架构师能够快速定位问题、解决问题,很多人并不是无法解决问题,而是没有解决问题的思路,而架构师不一定亲自动手去修改代码,但是往往会提出精准的思路。
很多时候一个开发人员用1天、2天的时间解决不了的问题,架构师可以简单的几句话“点醒你”,让你几分钟解决问题,这就是他的价值。
架构师就像一个催化剂,放入到团队当中,能够为每一个人赋能。
4
架构师与程序员、技术大佬的区别是什么
架构师是一个人驱动众人,而一个编程强人,往往只能自己驱动自己或少数人,为企业带来的价值存在巨大差别,这也是架构师属于高级职位的原因。
这里请注意区分技术大佬和科学家的区别,某个人可以在一个领域突破,独立创新我认为那是科学家。
而技术大佬更多的还是在应用别人的技术,他并不是原创者,只能称之为一个能够熟练使用某一领域技术的专家。
技术大佬更加专注于解决“技术问题”,时常会陷入到具体的细节。
为什么很多老板、业务人员不爱和技术人员一起讨论问题,因为两个人不在一个维度,技术人员经常给人一种"钻牛角尖"的感觉,或者答非所问。
很多人不认为技术人员思维木讷,那是因为我们身在其中,身边的每一个人的思维模式都和我们相似。
当你和非技术人员交流的时候,尝试切换到对方的视角来看我们自己,你会发现,我们把思维困在了自己的小圈子里。
业务架构师、技术架构师都可以统称为桥梁工程师,他们都能过“讲人话”,让各个团队和角色“听得懂”,让整体效率得到提升。
5
架构师应该具有哪些能力
架构师最需要的是综合能力,由硬实力和软实力两方面组成。
硬实力是我们的技术能力和架构能力,这一部分是最基础的,同时也是最重要的,因为这些使我们能成为架构师的敲门砖。
当我们成为架构师之后,在实际的工作当中,你会发现,技术能力只占你本职工作中的一小部分,而大多数的时候,需要你发挥的是软实力。
硬实力当中,最重要的是架构能力,架构能力是一种思维能力,能够透过现象看到本质的能力、能够将业务语言转化为技术语言的能力、能够将从抽象到具体的能力。
所以成为架构师最重要的就是打磨自己的架构思维。
更难的就是沟通能力、表达能力、协调能力、总结能力、汇报能力、抗压能力等等一系列的软实力,现在社会越来越需要的是具有综合能力的人,只有僵化的技术思维,唯技术论很难让自己的职业生涯长期发展。
架构师是个能力综合体,从技术、思维、方法等各个方面都需要较为平衡,而我们其实更多的只专注于技术层面,忽略了其它重点。
6
成为架构师有哪些方法,应该怎么做
(秘笈 = 硬实力+软实力)
第一,提升硬实力!
最重要的先提升自己的架构思维,形成自己的架构体系,能够解决不同场景下的不同问题。
这是个不断积累的过程,当你看的案例越来越多,思考的越来越多,就可以逐步养成自己的架构思维模式。
我用一年的时间写了人生中的第一本书《架构基础:从需求到架构》,这可以作为你的一个重要起点,来提升你的架构思维能力。
这本书与任何编程语言无关,目的是提升读者的设计思维、培养读者的设计能力、开启读者的架构思维。
我根据各种企业级真实场景总结,提出合理的设计思路和解决方案,从需求、问题、解决方案、原理、设计方法、落地方案多个角度,给出架构设计方法,通过大量的思考和解读,潜移默化地增强你的架构能力。
大量的架构图、时序图、状态图等,简单直接地刺激你的思维能力。
同时,本书也是一本设计方案指南,开发人员、设计人员、架构人员均可参考本书,针对遇到的场景进行参考性设计。
包括大型互联网架构设计的四大原则、分布式微服务架构设计、登录功能架构设计、用户安全架构设计、系统日志架构设计、系统攻防架构设计、系统消息架构设计、监控预警架构设计、关系型大数据架构设计、批处理调度架构设计、系统配置架构设计、企业级核心架构设计实战等,详细讲解了各种场景的架构方案。
目前本书已经上架京东、当当,扫描二维码直接到达。
其次,提升软实力!
技术人员从骨子里不重视软实力的提升,认为那些都是阿谀奉承、极尽谄媚,最终导致了不会沟通、不会汇报、不会开会、不会写文档。
我在自己工作十年之际,深刻反思了自己的职场生涯,分析过往的经验,找出那些自己踩过的坑。
以真诚之心,录制了一套十分接地气的音频课程《程序员到架构师的精进之路》,来帮助大家提升软实力,程序员如何学习技术、如何汇报、沟通、写文档、开会、提升价值等等内容。
-----------------END----------------