用最简单的方法,助力优秀架构师快速成长 - 系列01

176 阅读8分钟

【个人介绍】 李春丽 京东零售-供应链高级技术架构师,哈尔滨工业大学计算机系硕士毕业。具有丰富的大型复杂产品研发及架构经验,现负责京东供应链的技术架构,也为零售、制造、金融等多个行业的大型企业客户提供过技术架构咨询。

【系列01 进入架构师的世界:架构师职位的工作目标、职责范围、必备技能有哪些?】

一、开场背景

在工作中有很多人问过我,到底一个优秀的架构师是什么样的?他们有的是大学生读研想选择一个合适专业以及未来的岗位,有的是刚入职的研发,也有的是做了很多年的架构师。

今天我带大家进入架构师的世界,我相信大多数计算机研发工程师,梦想就是成为一名大厂的优秀架构师,在各种技术问题中游刃有余,所有人都非常信赖他,他也是公司技术的风向标。然而真正做到这样,有的人用了很短时间,有的人用了很长时间,有的人可能一辈子也不是,我见过最快的架构师,是毕业3年后就成为一个大厂的高级架构师。

我也和很多大厂优秀的顶级架构师工作过,我发现他们有很多共同点,无论在专业知识的掌握范围还是思考方式,都很类似。我想把他们身上这些共同的技能总结成一个个简单的模型,制作一系列的文章一一分享给大家,因为模型总可以把复杂的问题简单化。我相信通过这样的学习方法,就可以缩短你成长的路径,基于此再通过若干项目实践历练,你就可以超越别人快速成为一名优秀的架构师。

其实这也是优秀架构师在工作中思考分析问题的过程,即:看到现象、总结共性、提炼模型、分享传播。我希望大家都在自己的工作中有意识的培养这样的工作习惯,其实无论做什么工作都需要,但是对于架构师尤为重要,因为他设计的架构需要稳定、可靠、兼容性强。

今天先带来第一篇文章“系列1:架构师职位的工作目标、职责范围、必备技能有哪些?” 看看这种写作风格是否被大家接受。

二、知识模型

进入架构师的世界,大家可能首先就会有3连问(3W)即:架构师的工作目标是什么(What)、需要哪些事情(What)、为了做这些事情必须具备什么能力,才能成为优秀的架构师呢(What)? 我们有个简单的 182 模型, 让大家快速熟悉这个职业。

182 模型(1个目标)

首先我们先看下架构师的工作目标(182 模型的1含义) ,架构师需要在满足业务需求的前提下,平衡利弊,寻找最合适的技术方案,保证它可以落地并可以持续演进。这里保证落地和持续演进非常重要,因为架构师不仅仅做项目初期做架构设计,还要保证这个业务需求可以落地交付并且可以兼容未来持续演进,因为所有项目都不是一次性的,它需要基于这个架构,持续承接新的需求,不能每次都修改或变更底层架构。

182 模型(8个职责)

在我们了解完目标之后,我们在看看架构师的工作职责,下面有几个关于架构师工内容的描述,大家可以心里给他们判断下对错。

1、架构师仅在项目初期做好架构工作,之后项目就不需要他们了,他们就可以撤了。 2、架构师做好技术就行,不需要了解太多业务,但是产品经理的需求,需要 100%实现。 3、架构师通常内向点不爱说话也可以,支持好项目就行。

这些是我听到很多人对架构师的工作描述,其实以上都是错误的。一个优秀的架构师,除了要在软件交付的各个环节起作用,还需要在担任技术规划、培养新人、技术分享等,他们不仅仅要高效的交付需求,还要提升团队的技术能力,搞好团队的技术氛围,甚至很多时候还要承担项目经理、技术运营等角色。是不是责任重大?我们通常开玩笑的说,我们架构师即要上得厅堂又要下得厨房。有的时候还像个村委会大妈,苦口婆心的督促你完成架构优化整改任务,进而保证整个架构按照预定的方式发展。

下面具体看下架构师的工作职责,这里总结下主要是8大职责:

  1. 项目交付阶段- 产品PRD阶段:架构师需要评估需求合理性以及系统承接的大致体量。
  2. 项目交付阶段- 研发架构阶段:架构师需要做架构设计及技术选型 ,书写架构文档,这也就是最重要一环,工作占比 70%;
  3. 项目交付阶段- 研发开发阶段:架构师需要做详细设计的检查,并随时调整架构方案,并对研发的代码做Review;
  4. 项目交付阶段- 系统测试阶段:架构师需要同测试人员一起校对测试范围准确性,是否重点的技术设计以及上下游协同的点都覆盖了。如有性能要求还要一起准备压测方案。
  5. 项目交付阶段- 系统上线阶段:架构师需要同研发、测试人员一同看下部署分流方案、并检查上线 checklist以及万一发生问题的预案是否有遗漏。
  6. 项目交付阶段- 系统运营阶段:架构师需要同研发、测试人员复盘线上问题,寻找技术改进提升方案;
  7. 日常- 架构规划:按时总结系统技术问题,参考业界主流技术及竞品,做出技术规划(通常按照半年或年)
  8. 日常- 架构传播:日常还要肩负带领新人、分享知识或搞个技术活动等,提升技术氛围和技术影响力的工作。

原来我们的架构师需要做这么多的事情啊,几乎需要同所有角色协同,那它们都需要有哪些技能才能把这些事情做好呢? 总结了下,主要是2大技能,软、硬实力需兼备。

182 模型(2个技能)

第1是专业技能,做到优秀的架构师一定需要有足够广和深的专业知识,这个我相信比较好理解,他需要如下这些能力,而这些我也会在后面的系列分享中一一阐述。

  1. 技术技能- 业务架构:如何和产品经理协同?
  2. 技术技能- 系统架构:采用何种系统架构模式?如何技术选型?
  3. 技术技能- 应用架构:如何拆分自己的系统?
  4. 技术技能- 部署架构:采用何种部署架构?
  5. 技术技能- 架构文档:如何架构设计文档?
  6. 技术技能- 技术评审:如何有效的做技术评审?
  7. 技术技能 -上线分流:如何让用户无感知?
  8. 技术技能- 性能调优:如何压测及调优系统?
  9. 技术技能- 技术复盘:如何有效复盘线上问题?
  10. 技术技能- 技术规划:如何做技术规划?

第2是专业的素质,架构师经常需要与不同角色进行协调、沟通并传播技术知识,这就需要他具有良好的表达力、谈判能力、影响力、领导力等,只有这样你才能清楚的表达你的想法、穿梭在各种角色之间,才能成为大家的技术领袖、带领技术团队解决各种问题。推荐有些书籍包括《沃顿商学院最受欢迎的谈判学》《影响力》《金字塔》相信熟读后做事一定会事半功倍。

三、本章总结

以上就是这次分享的主要内容,我们来总结下分享的知识,我们通过182模型,快速了解了架构师日常工作职责、目标以及所需要到技能。在未来一系列文章里,我就会围绕这个模型,讲述其中的工作技巧,也会同今天一样,把复杂的解决方法抽象为简单好记的模型。通过这些模型,我相信它一定可以缩短您成为架构师的路径。就像《教父》中说:"花半分钟就看透事物本质的人,和花一辈子都看不清本质的人,注定是截然不同的命运“。

最后,回想你团队的优秀架构师日常工作是否符合 182 模型?