架构师概念
2是一位出色的程序员
-
不编程的架构师的职业生涯是短暂的
-
架构师是一个比较“虚”的岗位,主要的问题都在“落地”的过程中
eBay的架构师Randy Shoup先生是总结架构师在项目中的职责:
在这个过程中,一个架构师至少有一半以上的工作是需要与开发团队一起进行。
那么:架构师必须通过自己的个人影响力来对开发团队进行指导工作,说白了就是和其他成员一起写代码,来指导团队成员实现每个架构细节的思路。
3是使用代码作画的大师
一个架构师的价值在于,他不仅能看到系统的美,而且能够在建造系统的时候能够把这些美创造出来。
做为一个架构师,需要实现(这个过程是结对编程,会有一个搭档)一个系统最难实现的一部分。将其称之为“先锋”,因为这是检验脑中的主意是否真的是一个好主意的过程。第一次实施中会细化这个主意。然后才会放心的让编程团队的其他成员按照这个模式来走。这就是“架构”。
4抽象思维
逻辑思维和抽象思维能力是一个架构师最重要的素质。
-
抽象思维是驾驭概念的技能是最高潜力。
50技术前瞻性
一门技术的平均寿命却不长,因此作为程序员们的技术领袖,架构师必须有很好的技术前瞻性,要先于大家了解到最新的技术。
-
学好英语
-
从外部获得最新技术信息
-
培养逻辑思维能力和接受能力
技术前瞻性还体现在对新技术的选择上。
在自己所处的领域肯定了解颇深,未来本领域技术该如何发展,应该有自己的理解。
6问题解决大师
所谓看到问题的本质,实际上是一个思考的层面问题
-
透过问题看本质
-
了解到代码之下,更深层次的那些机制
内力
架构师要努力成为内功深厚的高手。
-
内功的修炼第一层,是开发技术的培养
-
更高层次的修炼,就在于不同技术的学习,数据库知识,安全监控,网络构建,开发模式等。
在内力修炼方便,项目经理与架构师职责是不一样的,所需要的技能也是不一样的,需要明确。
2知识领域要宽广
-
具备开发方面知识,从理论到架构,从数据处理到安全监控
-
多学习跨领域、跨学科,知识面广
3沟通与交流
架构师是一群善于沟通的技术领袖。
-
沟通要清晰明了,平和待人
-
人性化的沟通,善于使用工具如白板,图形工具等
-
善于召开小范围技术会议,讨论理解
4权衡取舍
架构师每天都要在鱼与熊掌之间选择。对权衡取舍方面有着出色的把控能力
什么是可做的,什么是重要的,什么是将来能做的,每天都做做选择题
没有完美的架构,架构师需要对这些架构的缺陷有明确的了解。站在现有资源场景的角度上,权衡决策。
5艺术气质
-
一个优美的系统是可以像有机的生命一样成长的。
-
艺术气质的另一体现就是对简约的追求
6管控能力
架构师要善于管理整个开发团队
-
开发成本与收益平衡
-
从技术的角度,对问题的控制,特别是开发过程中的监控
-
管理和控制上,需要有独到的见解。