文档章节

论架构师的职责

gaolu
 gaolu
发布于 2016/01/31 20:52
字数 1293
阅读 308
收藏 26

很久以前(4,5年前)当核心码农,只需保质保量完成既定任务。技术选型开会的时候随便yy,反正最后拍板背书的人不是我。完成特定的任务,想算法,做优化,实实在在的产出,很有成就感。 

而最近这几年,开始渐渐提升自己,从架构师,技术经理,到技术负责人。现在开会不敢乱说,技术也不敢乱选。因为要给设计做最终拍板,确定最终的技术架构体系。所以会经常焦虑自己做的设计是不是有坑,是不是太low等等。 

同时在公司有限的资源内,还得决定哪些先做哪些缓一缓。以前我只需要把待做的1234抛出去,具体做啥上头说了算,你说做1我就做1,不用过脑子。现在经常1234都要做,手头的资源只够做2个,优先级还得自己协调,光想这个优先级就头大。

因此在此开贴,抛砖引玉,谈谈自己对架构师职责的理解。

首先,我们应该明确,不同公司对架构师的定位不尽相同,而且也和架构师在一个项目中切入的时间点有很大关系。经历过几家公司的架构师职位,有的是以技术选型,设计阶段给技术团队提供咨询为主;有的则是系统调优,代码重构,性能优化为重;而还有些公司,CTO的设想是,产品经理提产品需求,架构师提重构和优化需求,并且作为顾问参与到所有项目的设计阶段。

在我看来,架构师对公司核心业务,组件化,耦合,解耦的理解程度如何,对新技术保持浓厚兴趣和探索,决定了一个公司在技术演进发展道路上是否会一路坦途。同时,架构师应该深刻理解,架构是被业务推动而发展的。


优秀的架构师在作业时,因为长期经验使然,会自然不自然的留下平滑升级的余地。而不会在这个时间点就引入过多架构问题;在构架之前都需要用采取类似伪代码的形式把问题勾画一遍,这样能让各种关键细节问题浮现出来,然后再去讨论, 否则就是空谈。

架构师不会关注细节,但是架构师需要知道有bug或者性能问题(有人告知或者线上表现观察出来),然后别人用的时候给出建议。具体为什么有bug,如何做算法优化,架构师可以不用太深究。架构师关心的是更high level的大模块之间的关系。当然也有公司要求架构师切实可行的钻研进去,做好各种优化和调优工作,颇有点救火队员的角色扮演。这种情况的出现,显然是前期项目协调和产出产生了较严重的问题所致。 

当然自己做实现也有个抽象和分层的问题,我觉得这个问题在不同层次上是同构的。网站级别的架构和模块内部的架构,道理和方法是一样的。 

不过我想说的重点就是,要抵制那些过度微观的工程倾向,从来不做API评审,但是code review 抓的很紧,这就属于本末倒置,code review本来就是一个微观的东西,你写的东西leader评价再好,格式再优美,higher level上是一坨就不行。 

我认为在各个层面上,能控制界面层就很好了,内部实现是实现的问题,这个在上一层可以系统的解决,比方引入稳定性和性能反馈,你做个变更我看下好了还是坏了,到变更这个层次,结论就很强了。

大体上,宏观指标好的,也更可能是fixable的,反过来,不fixable,但是宏观指标好,你也没必要去深究,最多这块重写。


最后,一个现实问题,架构师应不应该参与编码呢?架构师如果完全不做编码,时间长了以后自己的知识如何持续更新,与时俱进才是最大的问题,而且我觉得这基本上是无解的。更坏的情况是,有些架构师自己的知识懒得更新,所有新的事物,一律要别人往他知道的东西上套。这时候谁还服你,只能是you can you up。

所以,我不认为脱离编码去搞架构是一件好事。也不认为脱离业务去搞技术框架是一件好事,最好还是一边干,一边搞这些东西。建议适当编码,目前我每周仍抽出时间看看代码偶尔也编码,实际工作中,可以进行业务和非业务核心层的编写。


© 著作权归作者所有

gaolu
粉丝 29
博文 58
码字总数 52768
作品 0
朝阳
架构师
私信 提问
加载中

评论(2)

zhangrurong
zhangrurong
赞\(≧▽≦)/赞
淡茗
淡茗
深有同感
如何成为顶尖的架构师?

在技术圈,架构师一方面是已经被说烂的职务,另一方面也是让人困扰的职位,行业发展到现在似乎人人都是架构师,各种架构图绚丽多彩漫天飞舞,同时永远有人在抱怨架构太烂、坑太多。 那么到底...

禁区铁铍人
2017/12/02
0
0
架构师是做什么的?如何成为专职架构师

架构师是做什么的?如何成为专职架构师   架构师按照专注领域不同,可分为企业架构师、基础结构架构师、特定技术架构和解决方案架构师等,专职架构师往往偏向基础结构架构师和特定技术架构师...

yexi08
2018/04/03
2
0
如何成为一名合格的大数据架构师?

如何成为一名合格的大数据架构师? 架构师按照专注领域不同,可分为企业架构师、基础结构架构师、特定技术架构和解决方案架构师等,专职架构师往往偏向基础结构架构师和特定技术架构师,专职...

mo默芯
2018/04/08
0
0
架构师向左,项目经理向右?[转]

最近开始了新一轮的换工作历程,投简历也集中在了架构师和项目经理这两个角色中,当然,架构师很多时候跟项目经理,team leader,高级软件工程师是重合的,当然,我指的是国内了,所谓的架构师就是更...

jqbmaster
2012/05/26
1K
13
支付宝架构师:从工程师到架构师的成长之路

0、前言 架构师是一个没有被严格定义的角色。 在写这篇文章之前,我特意把这几年看过的关于架构和架构师的 书重新翻了一遍,结果发现它们的定义或多或少有一些不一样,而经过了这几年,一些之...

阮惠辉在OSC
2016/05/17
926
1

没有更多内容

加载失败,请刷新页面

加载更多

EDI 电子数据交换全解指南

EDI(Electronic Data Interchange,电子数据交换)技术使得企业与企业(B2B)实现通信自动化,帮助交易伙伴和组织更快更好地完成更多工作,并消除了人工操作带来的错误。从零售商到制造商、物...

EDI知行软件
今天
3
0
CentOS7的LVM动态扩容

# 问题 CentOS7上面的磁盘空间有点紧张,需要扩容。 解决 查询当前磁盘状态 [root@xxx ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTfd0 2:0 1 4K ...

亚林瓜子
今天
3
0
Kafka 0.8 Producer (0.9以前版本适用)

Kafka旧版本producer由scala编写,0.9以后已经废除 示例代码如下: import kafka.producer.KeyedMessage;import kafka.javaapi.producer.Producer;import kafka.producer.ProducerConfig;......

实时计算
今天
5
0
Giraph源码分析(八)—— 统计每个SuperStep中参与计算的顶点数目

作者|白松 目的:科研中,需要分析在每次迭代过程中参与计算的顶点数目,来进一步优化系统。比如,在SSSP的compute()方法最后一行,都会把当前顶点voteToHalt,即变为InActive状态。所以每次...

数澜科技
今天
6
0
Navicat 快捷键

操作 结果 ctrl+q 打开查询窗口 ctrl+/ 注释sql语句 ctrl+shift +/ 解除注释 ctrl+r 运行查询窗口的sql语句 ctrl+shift+r 只运行选中的sql语句 F6 打开一个mysql命令行窗口 ctrl+l 删除一行 ...

低至一折起
今天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部