美文网首页
架构师的成长飞轮

架构师的成长飞轮

作者: 窝牛狂奔 | 来源:发表于2022-04-13 16:38 被阅读0次

    什么是架构师?

    基于可质疑的知识源提供的不可靠的数据做精准猜测工作的人。

    架构师是解决什么问题的?

    1、业务复杂度超出单人(团队)认知能力。(认知)

        大规模、高复杂度的业务场景越来越多,上线速度跟不上。

        缺乏长期整体设计,短期上线后很多未预料到的问题。

    2、大规模团队协作超出单人(团队)协同能力。(协作)

        20+团队参与的战役越来越多,更多的系统交互,链路越来越长

        缺乏对全局最优做把控的角色

    3、技术创新突破业务的天际线。(技术创新)

        选择技术的方向,建立技术标准

        建立并且推广最佳工程实践

    架构师的角色——人人都是架构师

    架构师的主要职责:

    把一个整体切分成不同的部分,建立协作机制,让不同的角色分工完成,并组成一个有机的整体。

    职责范畴核心职责

    公司制定公司的标准,技术战略    拥抱云原生

    BU  为业务定制战略    自建还是复用中台;

    产品线  单系统、模块设计  设计子系统架构,是否使用TMF

    模块、子系统  代码设计  数据库表设计、代码详细设计、开发实现。

    执行过程闭环:

    问题->方案-》决策-》执行-》复盘-》问题

    架构师的成长飞轮

    领域知识:

        定义问题的能力

        行业视野开阔

        从业务挑战到技术挑战映射的能力

    技术能力:

        技术上无所畏惧

        技术选型能力

        模板级的作品

        既了解全局又熟悉细节

    影响力:

        技术架构要落到组织架构

        要得到技术团队的认可和尊重

        能解决技术团队的问题争论

    决策能力:

        决策要平衡务实

        有前瞻性大局观

        终局思维倒推实现路径

    如何识别真正的问题?

    发现问题、定位问题,永远比解决问题更加重要

    比如:业务提错了需求, 最后写完了,发现这个东西是错的,或者上线之后根本没有用,就废弃了,这就是资源的浪费。

    定位问题的:five why

        打破砂锅问到底

        朝着解决问题去提问,而非定责

        不要只找到人的原因

        要找可控的因素:人、态度、意识是不可控的;工具、流程、标准 是可控的。

        前后左右问法:为什么我们以前没有问题?为什么类似的A、B 没有出现?

    5Why,案例1,机器停转的原因

    丰田汽车公司的前副社长大野,有一次在生产线上发现机器总是停转,虽然修过多次, 但是仍然不见好转,于是他询问工人机器停转的原因。

    1、为什么机器当时停了?因为机器超载了,保险丝烧了。

    2、为什么机器会超载?因为轴承的润滑不足

    3、为什么轴承润滑不足?因为润滑泵失灵了

    4、为什么润滑泵失灵?因为轮轴损耗了

    5、为什么轮轴会损耗?因为杂质跑到里面了

    解决方案:加装润滑油滤网

    这个例子可以看出, 之前已经修过几次了 , 但是并没有找到问题的根源。所以要刨根问题。

    亲身经历的例子,亚马逊仓库停转的原因

    2018年亚马逊会员节期间,北美最大的几个仓库之一停止运转

    1、为什么库房停止运转?因为库存系统出问题了, 所以拣货、分货都停止了。

    2、为什么库存系统停止了服务?因为数据库down了, 导致服务不可用

    3、为什么数据库down了?因为数据库出现了大量的表被锁死了

    4、为什么表被锁死了?因为发现带有断点和子查询的SQL性能出问题了。出现大量挂起的事务。也就是带事务的慢SQL

    5、为什么会出现慢SQL?云上新的数据库,是不如原来的ORACLE的。

    仓库停转8个小时, 事后一周才定位到原因。

    其他方面。为什么没有提前发现,为什么没有及时止血,为什么没有预案,等等。

    架构决策 之切分

    架构的核心决策, 其实就是如何切分-SOLID

        当前负责人(团队) 负载过重

        当前分工权利和义务不对等

        分布式系统的运行要求

    架构切分的结果, 要体现在组织结构上,并且权责要对等

    架构切分的是业务系统, 背后起飞的是人的利益(权责)

    架构决策冲突,背后往往都是权责冲突

    要做到权责对等,使每个人可以为自己的利益负责

    有的时候,要牺牲一部分人的利益,去达到负载均衡,权责一致。

    架构决策 之处境模型——不同的阶段有不同的决策方式

    例子:新冠疫情

    1、极早期确诊:

    这货既不是感冒,也不像典型的肺炎

    2、 早期治疗:

    可以确诊但是治疗方案需要试验对比

    3、爆发期:

    先封锁区域、再隔离人群、然后逐批检查

    4、稳定期:

    早防御、早发现、早隔离

    软件项目:

    1、混乱期业务Chaotic

    例如社区团购刚开始的阶段,抢团长、抢仓资源、划地盘,快速上线,系统边跑边设计边改进。适合使用团队熟悉的技术。

    2、创新型业务 Complex

    例如阿里云早期:适合多方探索、快速试错。

    3、成长期业务 Complicated

    网格仓是按照线路分拣还是按照团来分拣?开始综合考虑ROI,适合决策矩阵分析。

    4、稳定期Obvious

    供应商上线新的系统, 使用中台的最佳实践, 无需过多分析。

    架构决策 之 决策矩阵:

    可用性扩展性性能成本一致性

    方案199.9横向扩展100ms开发、测试、运维、运行最终一致

    方案299.9999纵向扩展50ms强一致

    对于选择的方案,要提供对其劣势的分析和应对方案。

    架构决策 之可逆性:

    可逆性:单向门,双向门

    单向门:一旦选择,没法回头,比如数据迁移

    双向门:快速实验, 在可以承受的风险范围内快速行动

    长期主义的5So方法

    思考有关决策的短期、中期、长期的后果。 业务长期倒排, 这种中长期的思考能力,非常难能可贵,以及非常需要坚持。有的同学就是会在千钧压顶之际反问业务,这个一定要这么做吗?

    基于终局倒推的中短期的实现路径。

    架构决策  之推论阶梯——追求最终正确

    追求最终做的是正确的事情,而非一开始就判断准确。 

    常常对的人,会主动寻求信息推翻自己的假设和结论,这是非常反人性的。人们对证据收集往往是反人性的。

    很多人在主观认为一个事情正确的时候, 他后面所有的论证, 数据收集, 都是围绕这这个事情是正确的来的。不再是说这个事情到底怎么做事对的。这是一个很常见的人性。

    反模式的架构师

    很多事情都等着他看、拍,容易成为团队的bottleneck

    成功非常依赖个人能力

    少数架构师脱离一线,对细节了解不足,很难及时做出有价值的判断

    业务技术部门是否需要架构师?早期和后期,拥有更多的架构挑战

    架构师把架构决策都做了,如何培养新人做架构?

    机制比较松散,需要文化和价值观来驱动

    相关文章

      网友评论

          本文标题:架构师的成长飞轮

          本文链接:https://www.haomeiwen.com/subject/xlpasrtx.html