从事架构师岗位快2年了,聊一聊我对架构的一些感受和看法
从事架构师岗位快2年了,聊一聊我和ChatGPT对架构的一些感受和看法
职位不分高低,但求每天都能有新的进步,永远向着更高的目标前进。
文章目录
- 踏上新的征程
- 架构是什么?
- 架构师到底是干什么的?
- 你的终极目标又是什么?
- 如果你想成为架构师该如何提升自己?
- 附图
时间是过得真快,就这么一晃就快过了2年了。自2021年5年以来,跌跌爬爬,在架构师的岗位上也快“混”迹2年了,是时候好好静下心来梳理梳理,好好想一想接下来的路该怎么走,如何才能获得更大的提升,毕竟留给快35岁程序猿的时间已经不多了。
下面,我想结合自己的经历,谈一谈自己对架构师岗位的感受和想法,也是希望这样能够更好地提醒和鞭策自己,时刻不要忘了,你的本质工作是一个【架构师】。
踏上新的征程
时钟拨回到2年前,那是2021年5月的那个夏天,因个人原因我向前东家提出了离开,留下曾经一起奋斗过的小伙伴。
在前东家时,我是挂职【资深嵌入式软件工程师】,也曾带领过一个小团队,7-8人,做出过一些成绩,也曾为公司的业绩扛过一些靶子,但终究还是职业发展的考虑,我选择了退出。
正是有萌生提出之意时,在脉脉上有位HR找到我,说是有个【嵌入式架构师】的岗位要找资深研发,对嵌入式开发的要求比较高,有没有兴趣试试。
说实在,之前我也不知道有公司会专门招聘【嵌入式架构师】这样的岗位,但我是知道一般的研发团队中,总是会有人要负责【架构】的工作,而且肯定得是团队总最资深的那一帮人在搞架构的事情。
就这样抱着好奇心,我就参加了那场面试,没想到的是那场面试非常的愉快,跟我的面试官(也就是我现在的老大)聊得非常投机,再后来工作上也的确给予了最大力度的支持和认可,有一种求得知音的感觉。
就这样,一场很顺利的面试结束,复试了2轮,顺利拿到Offer,于2021年5月份入职。
而在2022年末的特殊事情,我也顺利得到老板的认可,成为了公司的小股东。
祥文可见:成为了公司股东,而我却失眠了!
也是从时候开始,我萌生了【架构师李肯】这个技术IP。
架构是什么?
架构,本文中特指【软件架构】。坦白说,架构是一个比较虚的东西,它不像实物那样看得见摸得着,而是一种抽象的概念在里面。
恰巧,最近ChatGPT不是非常火吗?要不,我们来问一下它,看看它对架构的理解是怎么样的?
提问:架构是什么?
回答:架构是一种分层模型,用于描述软件系统的结构和行为。它定义了软件系统的模块、接口、职责和关系,从而使软件系统可以更好地满足用户的需求。
下面谈一下我对架构的理解:
架构是一种抽象的软件设计,它要着力于用技术的手段解决业务上遇到的可伸缩、可扩展、性能优、易用性等难题。
一般来说,一个优秀的软件架构,必须要满足横向可扩展,纵向可伸缩,系统性能还要能够看得住一定的压力测试,同时,对架构的使用者而言,应该有非常清晰易用的API接口,在整个设计中需要充分考虑架构的易用性。
就拿我现在做的嵌入式系统架构来说,毫无疑问,这里需要的架构就是必须支持各种对接业务的功能模块可以可快速扩展和和裁减,同时对硬件底层的抽奖设计保足够抽象,以便于架构快速地移植在各个芯片平台上。而且,各个芯片平台的性能特性需要发挥到最佳状态,满足各种商用的需求。另外,对应用开发团队也需要提供非常明确的API接口和文档,以便于基于该软件架构快速输出软件,达到商业落地的目的。
架构师到底是干什么的?
这个问题我相信外行人都比较迷,于是我先用这个问题问了一下ChatGPT,得到的答案是:
提问:架构师到底是干什么的?
回答:架构师是一种计算机技术专家,负责设计和构建软件系统或网络架构,以满足业务需求。架构师需要深入理解业务和技术,以确定系统的需求,并设计合适的架构,以满足这些需求。架构师还负责评估和选择合适的技术,实施和监控系统,以及维护系统的性能和安全性。
嗯,好像有点道理。那么,我顺着这层思路再补充谈一下我的看法。
回到了上面【什么是架构】这个问题后,我再结合我的实际工作内容说说我的这个架构师到底是干嘛的。我分为几个点来阐述:
架构师首要解决的,就是复杂多变的业务需求中,分析并提取中核心需求,并加以抽象设计,以便于使用软件技术解决这样的需求难题;这就要求架构师一定是对核心业务非常熟悉的,否则可能你设计的架构就偏离了实际业务需求,这无异于纸上谈兵,哪怕架构设计得再优秀,都无法落地。
对提取的核心需求进行拆解:提取出对应的可扩展性、可伸缩性、易用性、性能要求等各个方面的需求,形成需求矩阵,针对各个需求,分别设计核心架构,满足业务需求。
架构师可以说是业务需求跟应用开发的一个衔接者,对上是对业务需求团队负责,对下是对应用开发团队负责,这里面的汇总、分析、设计、协调都是必备的技能;他所要解决的是两个团队面临的迫切问题。
对内,还需要负责核心技术难题的攻关:遇到团队中的疑难技术问题,需要攻关介入的时候,毫无疑问,架构师团队要冲在最前面,为后面的业务团队和应用开发团队铺平前进的道路。
对外,还需要负责业内核心前沿技术的调研和学习:这里面是一个进阶学习的过程,每个架构师团队必须要保持一定的学习能力,观测业内的技术架构方向,不一定非得追最新最热的技术方向,但至少你要能懂,这项新技术能帮我们解决什么样的问题。也许,将来我们就能用上它。
你的终极目标又是什么?
去年年末的时候,我写过一篇文章,叫 【架构师李肯】带你走进架构师的一天
里面有这么一章节:
正好俗语所说:“不想当将军的士兵,不是一个好的士兵!”
换到我身上,我认为是:“不想当CTO的架构师,不是一个好的架构师!”
我的更远大目标就是,有朝一日,挂帅CTO,至于迎娶白富美的后话,就还是别了,早已心有所属。
回想自己一路升级打怪,从技术小白,踏入助理工程师的岗位,慢慢提升自己,开始走向中级工程师,逐渐可以独立接项目了,锻炼了一些日子,开始担任高级工程师,开始考虑更全面了,需要承担技术攻坚的重任;再后来,跨越到资深工程师,也开始带团队了,不再单兵作战,需要为团队负责到底;而现在,架构师一职,承担的不仅仅是本部门的技术工作,还需要宏观考虑技术的延展性和前瞻性,某些情况下甚至关乎着整条业务线的生存,不可谓影响不大。
而如果走向CTO的岗位,那直接就关系整个公司的技术脉络,这可直接影响公司的存亡,压力和挑战并存。
我有时候也问我自己,准备好了吗?我希望我自己能给出肯定的答案:“ Yes,I’m ready !"
回到现实吧,朝着你的目标前进就好了,希望就在眼前。
如果你想成为架构师该如何提升自己?
这个问题可能也是大家比较关心的,同样的,我们也问一下ChatGPT吧。
提问:如果你想成为架构师该如何提升自己?
回答:
- 学习计算机基础:要想成为架构师,首先要掌握计算机的基础知识,包括计算机硬件和操作系统等。
- 熟悉编程语言:掌握多种编程语言,比如C,C++,Java,Python,Go等。
- 学习网络技术:熟悉TCP/IP,HTTP,FTP等网络技术,了解网络安全技术。
- 熟悉数据库:学习并掌握多种数据库,包括MySQL,Oracle,MongoDB,Redis等。
- 了解框架:掌握各种框架,比如Spring,Hibernate,Struts,MyBatis等。
- 学习容器技术:学习容器技术,比如Docker,Kubernetes等,掌握微服务架构。
- 了解分布式:学习分布式计算,掌握分布式存储,消息队列,大数据,云计算等技术。
- 实践经验:多积累实践经验,学习不同的架构设计思想,不断完善自己的技术水平。
好吧,答案跟我想的完全不太一样。毕竟我目前专注的嵌入式系统架构设计这一块。
但是我认为架构的核心理念是一致的,你需要扎实的基础技术知识来铺垫,最重要的是培养自己敏锐的【架构】思维。
比如用到一个很好用的框架,一个很帮的开源项目,多去想想别人是如何从【架构】去考虑问题的,同时又是如何设计这个【架构】已满足这些需求问题的,多动脑子去思考和整理,慢慢积累起来就会有比较敏锐的【架构】观。
又比如我们学习和使用的Linux系统,它里面可是浓缩了世界各地最优秀的那帮码农的精华,包含了大量的【架构】设计理念,而我们作为它的使用者和开发者,更是应该深入学习它,可以是某一模块的设计,或者某一类模型的设计,等你能把这些架构摸透了,差不多你也就成了架构师。
常言道:【书中自有黄金屋】,我个人觉得看对应领域的专家级书籍,也是一种非常棒的学习方式。站在巨人的肩膀上,可以帮助你爬得更快,升得更高。
经常在后台收到小伙伴的私信,问我有没有在架构方面比较优秀的书籍推荐。
这不,最近刚出了一本书籍,叫《持续架构实践:敏捷和DevOps时代下的软件架构》,它的一推出,立马轰动业界。
作为架构领域的从业者,我第一时间拿到了书本,匆匆看了几章,有种酣畅淋漓的感觉,甚至有种相见恨晚的意味。
软件架构领域正在爆发一场新的革命。Gartner权威发布2023年十大科技趋势之一**“可持续IT架构”**,可持续架构得到越来越多从业人员认同。创建和维护可持续的软件架构对于架构师和工程师而言也是一项巨大的挑战。
感兴趣的朋友,可以多关注一下这本书《持续架构实践:敏捷和DevOps时代下的软件架构》,尤其是希望从事架构师岗位的小伙伴,也许它能帮你解开很多心中的疑团。
更多关于《持续架构实践:敏捷和DevOps时代下的软件架构》书籍的介绍,请参考社区帖子介绍,详见 https://bbs.csdn.net/topics/613441520。
附图
这里有朋友好奇ChatGPT的玩法,又没有合适的工具来体验,所以来问到我,我用我那8毛钱的Python技术写了一个小工具,只需要输入API-KEY就可以了,不需要代理,也不需要fanqiang,可以试用试用。
这个小工具,有需要的可以私我,友情共享。
从事架构师岗位快2年了,聊一聊我对架构的一些感受和看法相关推荐
- Java架构师岗位的基本职责
Java架构师岗位的基本职责说明 Java架构师岗位的基本职责说明十篇 Java架构师岗位的基本职责说明 一.岗位职责的作用意义 1.可以最大限度地实现劳动用工的科学配置; 2.有效 ...
- python架构师工作职责_大数据架构师岗位的工作职责
大数据架构师需要负责深入理解业务需求,对业务建模,设计系统架构,满足业务需求.以下是学习啦小编整理的大数据架构师岗位的工作职责. 大数据架构师岗位的工作职责1 职责: 1.负责数据仓库建设,基于数据驱 ...
- 【SDCC讲师专访】专访架构师薛珂:弹性调度平台Saturn的架构设计
编者按:每个人的成长曲线不同,有的人在研究生之时就已有相当知名的产品和框架,从而在接下来的工作中一路顺风顺水,有的人却需要经历一个又一个的坑才能成长,不管是前者的聪明高效,还是后者的笨鸟先飞,他们都是 ...
- 一个15年的架构师谈“如何成为一名优秀的解决方案架构师”
摘要:且听有着15年软件研发.架构经验的华为云MVP魏群娓娓道来,如何成为一名合格的解决方案架构师? 架构师,这是一个在技术人员,特别是软件开发人员眼中具有神圣色彩的岗位. 团队中有了架构师,就是有了 ...
- 【IT技术】阿里RDS首席产品架构师何云飞:阿里云数据库的架构演进之路
专访阿里RDS首席产品架构师何云飞:阿里云数据库的架构演进之路 原文作者:pipihappy8888 http://www.itpub.net/thread-1887486-1-1.html 如果说淘 ...
- 我对架构师的理解(如何成为一个合格的架构师)
我对架构师的理解(如何成为一个合格的架构师) 引子: 在讨论架构之前,我们先上道菜,青椒土豆肉丝,这道小菜味道还是不错的,自私点了,不考虑您是否喜欢,今天就上它了. 准备原材料:食用油.青椒.土豆.肉 ...
- 阿里云混合云首席架构师张晓丹:政企混合云技术架构的演进和发展
近日,阿里云混合云平台首席架构师张晓丹分享了 IT 架构技术,并对政企混合云技术架构的发展进行展望. 云计算经历了十几年的发展,从被认为是"新瓶装旧酒"而备受质疑,到广泛应用于消费 ...
- 【20210903】【实践分享】架构师岗位的一次面试
时间:2021年09月03日 作者:小蒋聊技术 大家好,欢迎来到小蒋聊技术.小蒋准备和大家一起聊聊技术的那些事. 最近呢,小蒋参加了一些面试.小蒋决定打破自己原来的能力圈,去迎接新的挑战.风险与回报往 ...
- 天天说架构师,到底什么样的程序员能称为架构师?
2019独角兽企业重金招聘Python工程师标准>>> 我曾问过很多自称热爱代码的程序员的发展规划,大多都回答说期望成为一名架构师.而在招聘一方,有的团队会过滤掉多次提起架构一词而一 ...
最新文章
- html float作用,CSS float相关详解
- GitHub的MySQL高可用性实践
- [Charset]UTF-8, UTF-16, UTF-16LE, UTF-16BE的区别
- PHP使用单例模式进行连接DB:public的方法进行调用连接函数即可
- Ubuntu Linux 16.04 xfce下最漂亮的系统字体------文鼎粗钢笔楷体安装记录
- iar 看时序_IAR 硬件仿真查看运行时间
- 阿里开发者招聘节 | 面试题06-07: MySQL的数据如何恢复到任意时间点
- flask mysql环境配置_Flask教程4:数据库
- 数据库 聚合 、分组、筛选、排序、日期等函数的应用
- 架构师架构蓝图《UML精粹》 UML Distilled读后感
- java类加载器用途_对于java类加载器的认识(2)
- shp文件中polyline是什么_SHP文件坐标转换工具1.0版
- 厉害了!小学生用大数据研究苏轼,结论出人意料
- 禁用win10 1903 wifi诊断
- MySQL大略学习(二) 表格的操作 增删查改
- 做煎饼果子的N种方式——From Sequential to Reactive
- 2022RWCTF体验赛web的wp
- 靠一个HashMap的讲解打动了头条面试官,我的秘诀是
- PS作业【利用新蒙版再生图像】的一些经验和提示
- Excel函数带你看透身份证号