转享:架构师需要编写代码吗?

Innovation Showcase : Do Architects Need to Code?

该文作者Bob Familiar是微软的架构师(传播者 Architect Evangelist)。他在软件行业工作了25年,过去14年在微软。鲍勃关注面向对象分析和设计,分布式计算,面向服务和用户体验。

这篇文章中他认为:架构师是激发很多人在一个大型复杂系统中工作,还要完成一些核心的技术. 这样架构师需要有来自技术经验的技术眼光, 架构师需要擅长抓住技术正确方向,进行架构决定以迎接不断变革和大挑战。

这就需要拥有和领导管理层的说服力和影响力。如果架构师没有在开发者社区拥有影响力,就是再高的与领导打交道的政治手腕也无法克服这一缺陷。

个人点评:
本文虽然没有直接回答架构师是否需要编写代码,但是文章最后一句回答,如果你不能在开发人员中拥有影响力,也就是没有群众基础,就是拍领导马屁,是领导的亲儿子也无法胜任架构师。所以,技术这玩意你还是尊重点好,也不是靠政治手腕就可以的,也不是因为架构师名目很热,随便靠招聘或猎头就能猎到。

建议大型公司建立自己开发者社区,以此通过公司内部民间推选自己的架构师,或结合外部顾问辅助。

软件架构师之道

[该贴被banq于2010-05-07 11:53修改过]

非常赞同,这和“以德服人”有异曲同工的道理...

而且一点代码不写的架构师就就有纸上谈兵的嫌疑了,试问:仅仅依赖夸夸其谈如何能确保方向和决策的正确性呢?

话说回来,实践出真知的道理这个时代依然还是适用的...

我来谈点感受:的确是这样的,目前中国很多架构师都是理论级别的,就是没有代码经验沉淀出来的架构师,他们设计出来的东西往往和实现之间还有很严重的代沟;扩展和维护性普遍都很差;不过在中国能拍好马屁就基本能当好架构师的问题很普遍,期待着中现象的改变!

很是同意,经历过几任所谓的架构师,都不清楚公司是以什么样的标准招的,连一些最基本的都模糊不清:
jdk是java虚拟机;
java的堆栈内存都不知道;
就连这些都不清楚甚至不懂,怎么来当所谓的架构师呢?怎么服人呢?

我说一下我的看法,架构师需要写代码吗?这个题目容易让人产生误解,我认为项目中核心的代码应该要写,但是核心以外的代码当然可以不写,交给普通程序员代完成就可以了,我认为核心的东西如果不去写代码是根本无法了解其中的细节的,其实这个问题可以总结为架构与开发细节的问题上,我还是坚持我的观点,如果细节不了解,架构就无从谈起,很多时候是因为经验所以可以忽略细节,因为项目之间可能会有重复的技术,但是细节的东西还是了解的。我认为架构师是经过无数软件开发细节的磨练以后抽象上升为架构师的,和我之前谈的接口设计道理类似,如果有新的需求了,架构师自己了解的并不多,不了解技术细节,经验不足的时候肯定需要从基础做起,这时写代码是必须的。

2010年05月07日 10:07 "banq"的内容
个人点评:
本文虽然没有直接回答架构师是否需要编写代码,但是文章最后一句回答,如果你不能在开发人员中拥有影响力,也就是没有群众基础,就是拍领导马屁,是领导的亲儿子也无法胜任架构师。所以,技术这玩意你还是尊重点好,也不是靠政治手腕就可以的, ...

这里有一篇类似的文章,SrumMaster需要技术吗?

个人认为还是需要的,一个资深的架构师是能够写出Top Level 的API的。这里的Code不一定是实现代码,可能是伪代码!


2010年05月07日 13:49 "freeren"的内容
很是同意,经历过几任所谓的架构师,都不清楚公司是以什么样的标准招的,连一些最基本的都模糊不清:
jdk是java虚拟机;
java的堆栈内存都不知道;
就连这些都不清楚甚至不懂,怎么来当所谓的架构师呢?怎么服人呢? ...

这个是可能的,有些架构师负责代码设计,不一定所有的知识都牢记~