什么样的人算是架构师
共 2353字,需浏览 5分钟
·
2023-02-03 23:18
背景
最近一年主要精力在公司可观测项目上,之前提到过监控与可观测的一个简要关系:
而监控,我们又分用户体验监控(或者叫前端监控)、应用服务监控、中间件监控、基础设施监控。之前在用户体验监控上只是通过购买市面上的SAAS产品来解决,但这些SAAS产品的标准化功能并不能很好的解决同样是做SAAS的产品监控,比如:
1、页面监控几乎失效
比如同样是产品首页,不同的租户因为做了自定义配置,导致看到的内容完成不全,所以只通过抓取URL做监控无分析价值。有作用的也就是记录PV,UV这种了。
2、接口监控粒度不够细
比如有一个用于加载组件的接口:loadcomponent.action,只能从非常宏观的层面观测这个接口的异常、性能,但当发现异常时,并不知道是什么组件的问题,无法继续细分。
所以我们需要做很多自定义的埋点来解决上述问题,这就包含需要前端埋点、后端服务埋点、中间件埋点等。
小故事
当租户投诉产品性能差的声音不只一次当进入到高层耳朵后,性能分析优化的诉求的优先级就提升了,而最能客观反应租户实际体验性能的就是来自于用户终端的体验数据,因为需要看最长的链路性能,每层都会有消耗:
最能反映租户实际体验数据的是上图那300ms的性能数据,后面的距离用户越远失真越大,为此前端增加自定义埋点的诉求的声音越来越大,最后这个重任落在了新招的前端架构师身上。
而因为埋点诉求的声音比较高,并且工作量不少,架构师大量时间都是落地这项工作上。
这是不是有点像文章开篇的那只来到菜地的猫?
架构师的分类
企业架构师、解决方案架构师、企业架构师、领域架构师、业务架构师、系统架构师,这些说法都是网上总结的,它们都有啥区别,看着是不是完全没有头绪?
主要是看待架构师的维度不同:
从架构师的能力维度
先来看看郭大师在架构师的职业阶段中的一个图:
1、企业架构师(或者总架构师)
把控产品“大局”,细节关注的少,影响公司的所有发展。
2、系统架构师
网上说是负责一个系统的架构落地,所以有点类似上图的兼职架构师。
从系统架构分层维度
这种图是从系统实现的角度来看,我目前所处的公司是SAAS公司,所以有平台架构这层,有些公司的项目不一定有这层,此图可以理解如下架构师的名号:
1、领域架构师
上图中每层中的方框都可以有自己的领域架构师,比如前端架构,移动端架构师,微服务架构师,中间件架构师,数据架构师,云架构师,安全架构师。特指在某一个领域有比较深刻理解以及实战经验的人员。
2、业务架构师
即最上层业务的方框,主要负责业务方面,对技术了解较少,大多是经验丰富的业务分析师,设计并领导软件产品的业务逻辑。
架构师的定义
架构师的定义五花八门,从上面提到的架构师的分类就可见一斑,如果我需要给一个新手讲架构师的定义,以我目前的能力还是不够的。我之前找一个同事聊过他眼中的架构师应该是什么样的:
同事:架构师需要有改变现有系统的能力,不仅仅是维护系统或者是新增加一些功能。
比如上面提到的前端埋点的工作,就不属于改变现有系统的能力范围。比如咱们的友商提到后端低代码业务定制的能力,他们设计并落地了基于函数式开发(FaaS)理念,在线开发APL函数(Groovy),低成本实现业务逻辑定制。这种就属于改变现有系统的能力范围。
网友:有些岗位对架构师的要求,就是包含对业务的理解规划,甚至开发,就是集产品经理,项目经理,开发,架构师一体。
这是取自于一位学友的讨论,本人也有同感,它强调的是对人的一种综合能力的要求。
哪些角色是架构师呢?
还是以郭大师的思路来说说,它是从成长路线来排列的:
1、在校的学生
有可能是,在些学生在学习期间跟着导师或者是在公司实习时已经做过不少项目了,能力强的还是独档一面类型。
2、不作不到3年的职场新人
有可能是,有些人进步很快,虽然工作不足3年,也许独立设计过某某运营系统、电商系统,至少算是一个兼职的架构师。
3、大厂的技术专家
这些人都是在某个领域有一些研究的人,重构过不只一个系统,抽象能力、结构化设计的能力都是非常强的,至少是上面说的领域架构师。
4、一个部门的架构师
这类比较常见,比如我们之前研发部有一个架构部门,里面的领导就算是这个部门的总架构师。与研发部平齐的还有大数据部门,里面也有架构师的。这2个部门的架构师是协作关系。
5、一个企业的架构师
其实这类角色,我没怎么见过,有可能是我没进过大厂吧。
6、CTO
小厂的CTO大概率是,中大厂的CTO不一定,我之前公司的CTO其实是个CEO,没见过领导过技术革命。
7、工作超过10年的程序员
有可能是,也有可能不是。架构师并不以工作年限做为标准,是以工作能力来界限,就比如有些人工作3年的经历与有些人工作10年的经历相当一样。
我在哪里?
11年前我更换了公司,理由是我想找一个名号更响的名号:架构师。而后的这11年,我负责过无数的项目,兼职过很多角色,我也很难界定我算不算架构师,或者说是哪一种架构师。负责过中间件设计以及落地,这算是中间件架构师吗?负责过核心的业务系统,这算是领域架构师吗?主导过跨部门的项目,这算是解决方案架构师吗?
同时,我还拥有全栈研发能力,这会不会带我偏离架构师的航向?