软件 / 企业架构师是一项很重要的工作。架构师的职责很多,要胜任的话,需要具备特定的领导、沟通、技术技能。
Gabriel Morgan 在最近的一篇帖子里从 Daniel Goleman 的情感智能(EI)——自我意识、自我管理、社会意识和关系管理——切入,谈论了企业软件架构师应该具备的素质。
自我意识
- 情绪自我觉察
- 准确的自我评估
自我管理
- 自控
- 透明度
- 适应性
- 成就
- 主动
- 乐观
社会意识
- 同理心
- 组织意识
- 服务
关系管理
- 感召力
- 影响力
- 发展他人
- 变革催化剂
- 冲突管理
- 团队精神与合作
卡内基·梅隆大学软件工程研究所从不同软件工程师那里收集了很多他们对软件架构师的职责、技能及知识所持的观点。对于架构师必备的技能,一部分观点如下:
David Cornish(英国伦敦摩根大通公司的技术架构师):
跟技术团队和商务团队都有良好的沟通
丰富的设计经验和技术知识
分析思维和整合思维
冲突解决
Theo Gantos(美国密歇根弗林特 TEKA 公司的咨询师):
架构师是一位博学多才的人。在各种方法学领域都要有咨询、交际、组织、概念化、抽象思维、逻辑推理、数据建模的能力,自我检讨的能力,快速适应,演讲和沟通技巧,编程知识,写作技巧,销售技巧,个人魅力,金融和投资回报率计算技能,对付难弄、安于现状的人,有幽默感。
Venkatesh Krishnamurthy(印度班加罗尔市 Valtech 印度公司的技术架构师):
- 有创造力
- 艺术家
- 政治家
- 强有力的意志
- 优秀的沟通技巧
- 出色的演讲技巧
- 有人缘
- 成熟
- 表达能力强
- 勇于决策,并能坚持
- 挑战者
- 好的观察者
- 协商者
Victor Alejandro Baez Puente(墨西哥墨西哥城 Grupo Nacional Provincial 公司的 CTO):
- 对带有财务审计、合同管理、企业工作流、业务流程整合、资产管理组件的企业应用,有设计经验。
- 有 SOA 相关经验。
- 作为首席架构师参与过 J2EE 项目成立到交付的整个过程。
- 有在高可用、集群化环境部署 J2EE(富)Web 客户端应用的经验。
- 专长于针对软件系统工件构建和文档化的 UML。
- 宽泛的 IT 知识(应用开发、测试、部署、操作、文档、标准、最佳实践、安全、硬件、网络、操作系统、数据库管理系统、中间件等)。
- 擅长轻量级、快速开发、敏捷方法学,并有相关经验。
- 有估算、度量项目速度的经验。
- 有处理遗留系统和分阶段应用集成的经验。
- 对细节有敏锐的注意力。
- 书面、口头、图示沟通的技巧。
例子有很多。有些人把重点放在领导 / 沟通技巧上,而另一些人则重视具体的技术技能。亲爱的 InfoQ 读者,你认为软件 / 企业架构师应该必须具备哪些技能?
评论