01.架构师成长路线
01.架构师成长路线
想一两句话把什么是架构师讲清楚,是非常困难的一件事。因为架构师这个角色是致力于解决高度复杂抽象的问题,所以架构师的定义也是复杂抽象的。
但并不代表架构师的定义无法被解释清楚,我们需要多花点时间,从各个角度来解读架构师。
通俗地解释下什么是架构师
大白话的解释就是,软件产品的设计师。架构一词最早源于建筑学,软件工程的架构师与建筑工程的架构师有非常多的相通之处,都是负责“产品”的宏观层次设计。
他人眼中的架构师
在老板眼中,架构师是一名技术领导者,带领团队攻关疑难问题。
在业务方眼中,架构师是一座业务与技术的桥梁,填平业务与技术的鸿沟。
在研发团队眼中,架构师是一位导师与布道者,是大家学习的榜样。
在项目组眼中,架构师是团队的灵魂支柱,再困难的问题,抽丝剥茧后,也能变成小问题。
在外行人眼中,架构师是年薪百万的牛人,但为何如此,摸不清门道。
架构师服务的客户是谁?为客户提供什么价值?
- 第一类客户是需求人员(大多时候是产品经理,有时直接面向商家)。架构师需要不断和需求人员沟通,协助需求人员挖掘出客户的本质需求,保证需求质量。
- 第二类客户是研发人员。架构师需要将复杂的业务问题和目标,抽丝剥茧后,转换为技术设计语言(应用、模块、包、代码、API、数据库表等),指导研发人员顺利落地;出现技术争议时,在业务价值与技术实现间做好平衡。
- 第三类客户是业务决策者,架构师需要为重大业务规划提供的技术演进方案与成本预估,帮助决策者做出正确决策。
架构师的日常工作
- 领导重大项目,攻关疑难问题,确定项目的架构方案和技术选型。
- 制定研发标准和规范:编码标准,工具规范,评审流程,测试方法等。
- 将架构方案和决策文档化,和团队沟通,并推行自己的架构主张。
- 把高层的业务目标变成可落地的技术规划和解决方案。
- 检查、评审他人的技术方案。
- 和其他架构师、利益相关者沟通协作。
- 为团队澄清复杂问题、指导研发人员、解决技术冲突等。
架构师的种类
业界对架构师并没有统一的分类标准,推荐这两种分类方式:
从宏观到微观的角度划分:
企业架构师:决定整个公司的技术路线和技术发展方向,有些公司也会称为首席架构师,实际上这个角色已经无限接近于CTO了。
系统架构师:负责整体系统的架构设计,着眼全局,不太注重某个应用本身的架构,而是各服务、各系统间的协作上,更加关注如何综合运用已有的产品和技术,来实现客户期望的业务模式。系统架构师要求通晓业务、软硬件技术等多项知识,对知识全面性要求很高。
应用架构师:负责某个应用的技术架构,主要偏业务型应用,关注理解业务,梳理模型,设计模式、接口、数据交互等方面,同时也需要关注服务器负载、可靠性、伸缩性、扩展性、数据库切分、缓存应用等方面的基础架构设计。
按软件工程阶段划分:
解决方案架构师:专注于解决方案的规划和设计,所谓“解决方案”,就是把产品、技术、基础设施、理论方法,通过不断的组合和创新,满足客户的特定业务目标和需求。
业务架构师:从企业战略、组织结构、业务流程、业务能力等维度入手,关注某一个行业或业务领域的分析,产出业务模型,最终指导系统模型设计。也可以叫业务领域专家、行业专家、业务咨询师、资深顾问。
应用架构师:负责某个应用的技术架构,主要偏业务型应用,关注理解业务,梳理模型,设计模式、接口、数据交互等方面,同时也需要关注服务器负载、可靠性、伸缩性、扩展性、数据库切分、缓存应用等方面的基础架构设计。
特定技术架构师:专精某项技术的资深专家,从事中间件架构、大数据架构、安全架构、存储架构、网络架构、前端架构等技术规划和架构设计工作。
本文介绍的架构师主要偏向于系统架构师和应用架构师。
架构师在项目中的协作关系
架构师成长阶梯
架构师核心能力模型
这里以阿里P序列职级为例:
成长建议
- 阅读经典书籍
- 业务理解能力:《有效需求分析》《如何落地业务建模(徐昊)》
- 领域建模能力: 《实现领域驱动设计》《领域驱动设计Gitchat专栏(张逸)》《解构领域驱动设计》
- 微服务架构设计能力:《微服务架构设计模式》
- 大型项目协作能力:《学习敏捷 构建高效团队》
- 沟通表达与文档能力:《金字塔原理》《麦肯锡问题分析与解决技巧》
- 规划实践机会
- 提升业务理解能力:主动参与业务规划讨论,思考技术规划并与TL确认。
- 提升领域建模能力:多找产品沟通,牵头梳理复杂业务问题,分析领域模型的症结,产出治理方案。
- 提升微服务架构能力:组织团队成员,梳理线上频发的疑难问题,找出架构设计不合理处,产出治理方案。
- 提升大型项目协作能力:尽早了解业务OKR,主动承担大型项目的PM角色。
- 提升沟通表达能力:主动沉淀高质量的业务/技术知识,向TL或HR寻求跨团队分享机会。
- 参加培训与分享
- 学习极客时间等平台的线上课程、技术大佬分享。
- 参加架构组的培训课程,并完成作业。
- 针对能力模型,持续自我复盘,总结沉淀。