在软件架构这个上下文里, 总架构师指的是当面对技术发展的不确定性时,能对未来有个清晰且正确判断的软件架构师。
成长到总架构师需要跨越的障碍,就是不断寻找高风险决策的机会。对大公司的架构师来说,这一点尤其重要。在大公司环境下成长起来的兼职或全职架构师,往往以解决实际问题为主,很少有做决策的机会。在重大的技术不确定性场景下,多数时候都是他的上级在做风险和利益的权衡,然后给出架构决策。
正确决策的能力不是凭空出现的,与其他能力一样,都需要在不断的试错过程中反复打磨。既需要时间,也需要机会,更需要相对友善的文化环境。
怎么才能提升高度不确定性场景下的正确决策的能力呢?归根结底就是思考力的提升。
那么怎么帮助总架构师做一些决策,让他每次做重要决策的时候都能想到你。
首先有一个必要条件:你在某个特定领域拥有明显的优势,能在公司层面胜出。
你在帮助他人做高风险决策时,要做的事情就是:
- 理解整个决策的背景。
- 理解决策的制约因素。
- 在你所精通的领域提供尽可能多的依据,在最大程度上降低小决策的不确定性。
- 从你所精通的领域出发,为最终决策做出建议(也就是拍个板)。
- 尽可能多的参与到决策讨论中,了解其他领域的不确定性和收敛方法。
- 无论最终决策是否与你的建议一致,都要尽可能地理解最终决策背后的逻辑。
- 之后的数月甚至是数年,持续关注决策的后续进展,反思自己提供的决策建议中那些缺失和误判的部分。
- 之后的数月甚至是数年,关注其他领域后续的变化,思考最终决策的正确性。注意,不仅要看最终效果,还要看判断决策逻辑和过程的对错。哪怕决策是对的,那么其中有多少成分是靠运气呢?有多少成分来自对当前环境和未来趋势正确的判读?如果判断错了,那么其中有多少是假设错了,有多少是方法错了。
如果是在一个相对开放和包容的文化环境中,如果你真的有实力,肯定会被注意到,那么就会有机会通过上述方法来提升你的影响力。
总架构师人格的价值,在于为 CTO 决策者提供不同的视角,并在合理的时候帮他顶住来自 CEO 的压力,坚持正确决策。而 CTO 人格的价值,就在于抵抗住内心对技术的痴迷,以及保护自己团队同学的本能,从公司全局出发作出最优决策。必要的时候,技术先进性、团队利益和架构合理性都是可以牺牲的选项。
所以说,做好总架构师其实有一个必要条件,就是具备和 CTO 建立深度信任的基础,以及能化解日常冲突的能力。
在当前职业发展阶段下,获取 CTO 或者总架构师的器重,对于你的架构师成长来说很关键。不仅要提升自己决策建议的质量和思考力,还要从自己的视角出发,为他们提供最高质量的输入。同时,还要最大程度地参与整个决策过程,从而提升自己的判断力。当然,通过不断的反思来进一步提升判断力,也是必不可少的一环。
此文章为5月Day29 学习笔记,内容来源于极客时间《郭东白的架构课》,推荐该课程。