描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787111378600
优秀软件架构师的12项软技能大公开;助你成功走上架构师并成为优秀的架构师之路。
每一位软件开发人员都有一个架构师的梦,但为何真正的软件架构师却寥寥无几?软件开发人员更容易在技术上有所积累和突破,但是技术上的精湛并不足以使你成为一位优秀的软件架构师。合格的软件架构师究竟应该具备哪些能力和素养?本书科学而系统地归纳出软件架构师应该具备的完整能力模型,该能力模型呈一金字塔结构,共分为4层:位于底层的是技术技能,是软件架构师的基石,属于硬技能;从下往上的三层分别是关系技能、个人技能和商务技能,这些都属于软技能。由于硬技能会随着具体技术领域的不同而千差万别,因此本书假定读者已经具备了这方面的技能;但其他3大方面的软技能却在每个技术领域都适用,是每一位软件架构师的必修课,这是本书的核心内容。
为了便于认知和实践,本书将3大方面的软技能分为12项:关系技能包含文雅的举止(在任何环境下都能与人文雅相处的能力)、沟通(与人有效交互的能力)、协商(将事情办成的能力)、领导力(通过施加影响力将事情办成的能力)和政治(“政治场合”与人交互的能力)等5项;个人技能包含透明化(使自我、团队关系和项目透明化的能力)、激情(激发和保护激情的能力)和语境切换(将注意力迅速切换到新语境并保持专注的能力)等3项;商务技能包括商务知识(读懂商务语言的能力和了解产品与顾客的能力)、创新(如何通过学习和思考来创新的能力)、实用主义(抓住关键问题的能力)、认知(认知目标、战略及合作伙伴的能力)等4项。
本书不仅帮助软件开发人员系统地学习如何修炼这12项软技能,而且还能让他们进一步理解软件架构师的角色和本质,使他们终突破技术的“天花板”,成为一名合格的软件架构师。
译者序
前 言
致 谢
部分 关系技能修炼
第1章 文雅的举止
1.1 别人怎样评价你
1.2 技术之天花板
1.3 变得文雅、专业的途径
1.3.1 注重关系甚于争执孰对孰错
1.3.2 学会委派
1.3.3 生活是有反作用的
1.3.4 有效沟通之生与死
1.3.5 要正直诚实而不是率直
1.3.6 不要掩盖问题—它们以后还会冒出来的
1.3.7 提供专业的服务
1.3.8 忘掉以前的冒犯
1.4 小结
1.5 参考资料
第2章 沟通
2.1 沟通原则
2.1.1 先听后说
2.1.2 专心致志
2.1.3 正面思考
2.1.4 尽早道歉
2.1.5 不要在缺陷上招致恼羞成怒
2.2 沟通策略
2.2.1 多说“是”,少说“不是”
2.2.2 在销售过程中建立起信任关系
2.2.3 特殊场合才说“不”
2.2.4 抑制想自卫的冲动
2.2.5 倾听建议来改善合作
2.2.6 了解别人和自己的沟通需求
2.2.7 才思敏捷
2.3 与执行官沟通
2.3.1 执行官需要信任、忠诚和连贯性
2.3.2 清晰性甚于完整性
2.3.3 不要让执行官感到惊讶
2.4 小结
2.5 参考资料
第3章 协商
3.1 协商原则
3.1.1 不要让人惊讶
3.1.2 不要模棱两可
3.1.3 委派权威而不是义务
3.1.4 有困难时寻求帮助
3.1.5 不要掩盖问题
3.1.6 即使很难,也要坚持做正确的事
3.2 协商策略
3.2.1 倾听你的内心呼唤
3.2.2 设法同意
3.2.3 不要找分歧
3.2.4 寻找共同点
3.2.5 如果无法达到一致,就让所有人稍微不满吧
3.2.6 将协商作为一种改进措施
3.3 协商前的工作
3.3.1 知道哪些是可协商的
3.3.2 了解如何在单位里游刃有余
3.3.3 关键决定上寻求合作氛围
3.3.4 学习文化
3.3.5 让别人明白你的想法
3.4 协商的收尾
3.4.1 捍卫决策的执行
3.4.2 维护架构决定记录
3.4.3 你有时会赢,有时会输
3.4.4 从委派中学习
3.5 小结
3.6 参考资料
第4章 领导力
4.1 领导力的原则
4.1.1 建立信任关系
4.1.2 建立共识
4.1.3 建立战略伙伴关系(通过关系带来安全)
4.1.4 要身体力行(为你所说的话带来安全)
4.1.5 感知风险、评估影响、做出行动(明确风险的清晰度)
4.1.6 适当处理风险:什么是鞭炮,什么是原子弹(明确影响的清晰度)
4.2 领导策略
4.2.1 奥卡姆剃刀法
4.2.2 展现可视化信息
4.2.3 领导者要确保事情不跑题
4.2.4 基于环境推销
4.2.5 随大流(找机会利用已有的资源)
4.2.6 关注执行官于认知,而非解决冲突
4.3 领导的时机
4.3.1 利用单位的动量
4.3.2 知道何时伸出援手
4.3.3 允许其他人学习
4.3.4 知道何时该卓尔不群
4.3.5 请求原谅还是征求允许
4.4 领导别人
4.4.1 允许别人奉献(不要命令)
4.4.2 通过影响力激励别人
4.4.3 确保别人能做主
4.4.4 处理冲突
4.5 小结
4.6 参考资料
第5章 政治
5.1 政治的定义
5.2 政治市场
5.3 政治环境
5.3.1 与公司的战略方向保持一致
5.3.2 理解你所处的文化环境
5.3.3 及早处理别人关注的问题
5.3.4 相信你所推销的东西
5.3.5 不关我的事
5.3.6 关系很重要(与别人的关系)
5.4 政治原则
5.4.1 宽宏大量
5.4.2 不要为你的价值妥协
5.4.3 光明正大地竞争
5.4.4 透明地操作
5.4.5 你是怎样的人就怎样表现
5.4.6 帮助别人,不求回报
5.4.7 认识到生活是反身的
5.5 政治策略
5.5.1 帮助别人达成其目标
5.5.2 学会享受过程而不是目标
5.5.3 在关键之处力争出色
5.5.4 愿意就低优先级目标妥协
5.5.5 不要对别人的糟糕举止采取冒犯的行动
5.5.6 私下处理人际问题
5.6 政治时机
5.6.1 以适时的作风执行事情
5.6.2 今天失利并不代表明天不会成功
5.6.3 要认识到政治上你不会是常胜将军
5.6.4 积极参与政治游戏
5.7 成为一名好的政治人物
5.8 参考资料
第二部分 个人技能修炼
第6章 透明化
6.1 住在玻璃房中的架构师
6.2 透明化的类型
6.3 自我透明化
6.3.1 表现自然真诚
6.3.2 承认自己的弱点
6.3.3 承认你的实力和兴趣
6.3.4 赶在人前与上司沟通
6.4 项目透明化
6.4.1 让执行官看到你手里所有的扑克牌
6.4.2 架构师把透明化和清晰性带到许多领域
6.4.3 架构师将“发现”变成“收获”
6.5 关系透明化
6.5.1 该信任时就给别人信任
6.5.2 你说的话长久不变
6.5.3 道歉表明你的透明化
6.5.4 学会在做出反应前倾听(寻求透明化)
6.5.5 允许别人对你透明化
6.6 成为一名透明的架构师
6.7 参考资料
第7章 激情
7.1 什么是激情
7.2 发现激情
7.2.1 如何找到激情
7.2.2 恒心与激情:终极的杀手组合
7.2.3 岗位上的激情
7.2.4 重新点燃激情
7.3 将激情作为向导
7.3.1 等待机遇:它经常在找你,说话非常轻
7.3.2 跟着直觉走
7.3.3 选择你有激情的领域
7.3.4 改变会督促你前行
7.3.5 缺乏激情会成为你事业上升的天花板
7.3.6 把难事做好,尽心尽力投入
7.3.7 激情是提供动力的内在燃料
7.4 保护你的激情
7.4.1 忽略批评:这是你的激情、你的认知,不是他们的
7.4.2 不要分神
7.5 今天能做什么来追求你的激情
7.6 学会投入并享受过程
7.7 成为一名激情四射的架构师
7.8 参考资料
第8章 语境切换
8.1 自我意识语境
8.1.1 专心致志
8.1.2 明白你的弱项
8.1.3 生命中不仅仅有工作
8.1.4 多任务工作的效率奥秘
8.1.5 控制你的肾上腺素:慢下来
8.2 架构意识语境
8.2.1 使用“可/有…性”的字眼
8.2.2 寻求适当的耦合性和内聚性
8.2.3 持续构建你的语境
8.3 “大象”语境
8.3.1 哪些事没有提到
8.3.2 提问一些难题
8.3.3 早些发出坏消息
8.3.4 如果他们拥有这个公司,他们会怎么做
8.4 决策意识语境
8.4.1 他们真的已经把问题解决了
8.4.2 他们知道哪些替代方案可行吗
8.4.3 别人是否已经权衡过此技术
8.4.4 作为中立的第三方,即便这样做是个缺点
8.5 交谈语境
8.5.1 不要开会和用电子邮件
8.5.2 如果需要,(马上)让别人参与进来
8.6 谈话者语境
8.6.1 了解你的谈话对象
8.6.2 中庸之道
8.6.3 有时要唱红脸,有时要唱白脸
8.6.4 提供背景信息
8.7 项目语境
8.7.1 提出预算
8.7.2 带来实用性
8.7.3 学会在雪崩中冲浪
8.7.4 挑出专门的资源
8.7.5 你做出了哪些假设条件
8.8 成为一名善于察言观色、见风使舵的架构师
8.9 参考资料
第三部分 商务技能修炼
第9章 商务知识
9.1 了解商务
9.1.1 营销、财务(投入产出比)和销售
9.1.2 考虑拿一个商务学位
9.2 了解你的公司
9.2.1 了解产品对客户的价值所在
9.2.2 知道你的公司如何赚钱
9.2.3 了解你公司的历史、文化
9.3 了解你的顾客
9.3.1 考虑拜访顾客、打电话给销售或者在门面上帮员工干活
9.3.2 考虑参与可用性研究,参与产品概念访谈或其他客户产品评估
9.3.3 考虑使用敏捷技术
9.4 了解你的领域
9.4.1 收集领域知识
9.4.2 在商务环境中了解你的领域
9.5 帮助公司更好地了解技术
9.6 成为一名谙熟商务的架构师
9.7 参考资料
第10章 创新
10.1 创新的定义
10.2 建立边界条件
10.2.1 找出边界条件
10.2.2 在边界内创新
10.2.3 你会做什么(假如没有约束条件,不必故作姿态)
10.2.4 鼓励别人思考、开放
10.2.5 应对那些唱反调的人
10.2.6 避开唱反调的人,找个安全的地方来思考
10.3 发展内心准则
10.3.1 顺从你的直觉
10.3.2 学会信任自己
10.3.3 认真倾听客户的声音,但要保持自己的认知
10.3.4 听听别人的话(协作)
10.3.5 你今天能迈出一小步吗
10.3.6 今天不行没关系:继续埋头苦干,早晚会成功的
10.4 组合基本概念
10.4.1 阅读、阅读、还是阅读
10.4.2 疯狂的主意让你发现真正的边界
10.4.3 要有大眼光
10.4.4 创新者的困难抉择
10.4.5 创新与集聚:将事情按正确分组整合在一起
10.4.6 选择简洁
10.4.7 简洁性是知识产权的根本
10.4.8 在着手解决前先思考问题
10.4.9 定义问题
10.4.10 睡觉时思考
10.4.11 战略问题还是战术问题
10.5 成为一名能创新的架构师
10.6 参考资料
第11章 实用主义
11.1 实用型架构的定义
11.2 范围管理
11.2.1 与商务伙伴一起确定特性的优先级
11.2.2 帮助执行官做出正确决策
11.2.3 处理不确定性
11.2.4 有些时候,你只需要一个概念就能开始干了
11.2.5 使用敏捷过程作为一种实用主义方法
11.3 风险管理
11.3.1 区分可能性和可行性
11.3.2 对于每个决定,都自问一些重要的问题
11.3.3 应对可能的风险
11.3.4 架构刺探
11.3.5 与运营人员一起确定效率
11.3.6 观察其他项目,决定有哪些地方是可牺牲的
11.4 沟通
11.4.1 记录下大家一致同意的决议
11.4.2 提供多种替代方案,并推荐其中一种
11.4.3 用透明性拉平期望值
11.4.4 发展经验方法来估量项目
11.5 成为一名实用主义的架构师
11.6 参考资料
第12章 认知
12.1 认知之定义
12.2 找寻和创立引人注目的目标
12.2.1 发现认知
12.2.2 从混沌现实编造出有说服力的故事
12.2.3 克服障碍
12.3 开发与建立战略路线图
12.3.1 将路线映射至认知
12.3.2 制定支持认知的战略
12.4 确定志同道合的伙伴
12.4.1 认知需要齐心协力
12.4.2 认知要求有关键的利益相关者
12.4.3 认知需要资金支持
12.5 实践认知
12.5.1 将认知当做增加投入产出比的战略
12.5.2 使用认知灌输目标感
12.5.3 在项目评估时就应用认知
12.5.4 采用支出信封(界定认知范围)
12.6 成为一名有远见的架构师
12.7 参考资料
软的东西总是比硬的东西还硬。
—美国企业家、百事公司副董事长罗杰·恩里科
在开始阅读本书前,我希望你准备保持一种开放的心态,并渴望对日常生活尝试某些新的方法。
我叫Dave Hendricksen,是Thomson
Reuters公司的一名软件架构师。我的工作主要是产生智力法规信息,包括在Westlaw.com网站上从法律、法规及知识产权材料的数据捕获到数据显示过程。我和一位漂亮女士已经结婚22年了。我们育有两个孩子,养着一只猫和一条狗,另有一个鱼塘。
作为一名吃技术饭的人,我经常觉得我自己和“平常”世界的其他人不太一样。分析式思维、关注于解决问题、构建事务、连续几个钟头玩游戏,所有这些对我来说再正常不过了。我喜欢学习新东西。对我而言,上学总是很有意思。我拥有数学和圣经专业的学士学位,以及两个硕士学位—一个是计算机科学,另一个是技术管理。
我喜欢努力工作,渴望付出任何辛劳以便按时完成项目。我喜欢听老板说:“干得真棒,Dave!”当然了,我的想法是这样的:工作出色,获得晋升。生活毕竟在某种程度上有些恐怖,至少在从技术进入管理时。总是有道看不见的屏障阻挡着大批有才能的人往上爬,或者在事业上有进一步的发展。这道神秘的屏障反映出人们软技能的缺乏,它默默地阻碍着那些人往更高的阶梯前进。
我写这本书的目的是帮助你学习的软技能,这些技能是你要修炼为一名软件架构师所必须掌握的。
本书假定你已经有了成为架构师的技术技能,因此本书不会关注此类技能。换句话说,本书着重于阐述对作为架构师日常行为非常关键的十二项软技能。这些技能对于有技术背景的人们来说往往是有挑战性的技能,也是成为优秀的软件架构师必须修炼的技能。
本书的这十二项技能按三个部分来组织:关系技能、个人技能和商务技能。这种分类基于相关的优先顺序,即如果你没有关系技能,其他两组技能就不用提了。倘若你与别人或单位中的若干部门相处不好,你不大可能被提拔到架构师的位置,或者较长时间待在这个位置上。类似地,如果你没有必需的个人技能,商务技能也会无从谈起。后,尽管所有这些领域都很重要,但从优先次序来看,假如你没有首先掌握的关系技能,商务技能便不会达到你期望的效果。
我将这些技能看做一个金字塔,正如下图所表达的那样。
架构师的技能
希望你喜欢阅读本书,并且学到能使你成为架构师的新知识,这些新知识还供你成为架构师后改进技能,或者更好地理解架构师的本质和角色。如果你有任何问题或评论,尽管给我写邮件好了,我的邮箱是
祝你过得愉快!
—Dave
部分
Part 1
关系技能修炼
“技术”不能让一个企业运转起来,而“关系”能。
—Patricia Fripp
成功公式的一个重要因素就是要明白如何与人相处。
—美国总统西奥多·罗斯福
我确信再也没有什么事情比雇佣人并开发人的潜能更重要了。终,你是靠人来决胜,而不是靠战略。
—Allied Signal首席执行官Larry Bossidy
如果你想让某个人与你为敌,只要告诉他“是你错了”。这个办法屡试不爽。
—Henry C. Link交谈的真正艺术在于不仅在正确的地方说出正确的事情,还在于冲动的时候不要说出错误的事情。
—英国作家Dorothy Nevill女士
本书的部分注重讲述架构师的五个关系技能。第1~5章致力于讨论原理、战略及其他领域,诸如与执行官交互,以使你更有效率地管理架构关系。
第1章:文雅的举止。讲述你要在任何处境下都应保持与别人文雅相处。
第2章:沟通。讲述与他人有效交互的能力。
第3章:协商。讨论将事情办成的能力。
第4章:领导力。论述如何施加影响来将事情办成。
第5章:政治。讲述在政治场合与别人交互的能力。
评论
还没有评论。