【架构师期刊】成为架构师 需要哪些技能?

2019-03-11
字体:
浏览:
文章简介:在软件开发圈,"架构师"是一个受万人追捧的头衔,架构师给人的感觉是站在软件系统后面指点江山的诸葛亮,一个系统的如何运作.运作得如何,架构师都能提前设想出来,重构系统的时候,架构师也能像军师一样作出各种策略,并最终决策,在最低风险和损失的情况下让系统重生.想当架构师的开发就像想当将军的士兵一样,多.不管具体负责软件工程中的哪一个环节,运维.测试.DBA,还是实际写业务逻辑的一线工程师或者其它,大家都热衷于谈论"软件架构";并且不论是刚接触开发的大学生还是经验丰富的开发

在软件开发圈,“架构师”是一个受万人追捧的头衔,架构师给人的感觉是站在软件系统后面指点江山的诸葛亮,一个系统的如何运作、运作得如何,架构师都能提前设想出来,重构系统的时候,架构师也能像军师一样作出各种策略,并最终决策,在最低风险和损失的情况下让系统重生。

想当架构师的开发就像想当将军的士兵一样,多。不管具体负责软件工程中的哪一个环节,运维、测试、DBA,还是实际写业务逻辑的一线工程师或者其它,大家都热衷于谈论“软件架构”;并且不论是刚接触开发的大学生还是经验丰富的开发者,都会思考“如何才能成长为一名合格的架构师?”

对于系统该怎么去架构、负责设计软件架构的架构师职责是什么、需要些什么能力等这些具体的问题,大多数开发者是困惑的,并且多半也无从着手去体会。

基于此,我们策划了一期“技术人员如何成长为架构师?”的线上问答,邀请了专家与大家进行交流,并整理出此文,希望给读者一些启发。

嘉宾是李运华,互联网资深技术专家,专注于系统分析、架构设计等领域,对互联网技术的特点和发展趋势有较深入的研究,在系统解耦、高性能与高可用架构方面有丰富的经验。

架构的相关概念与架构师的职责,通过上边几个回合的问答,可以有一些初步的了解。而另一个更为切实的问题是:需要哪些能力才能匹配“架构”的工作,当一名架构师?

关于这个问题,李运华有一个概括。他认为架构师的能力主要包含三部分:判断力、执行力与创新力。

李运华解释,判断力是指能够准确判断系统的复杂度在哪里,执行力是能够使用合适的方案解决复杂度问题,创新力是指创造新的解决方案去解决复杂度问题的能力。

而这三种能力从哪里来?他认为主要来源于经验、视野和思考。

经验:设计过的系统数量、系统的复杂程度,都影响着架构师的成长。这其中不管架构是成功了还是失败了,不管是踩坑还是填坑,这些经验都将成为架构师能力的一部分。

视野:掌握的知识和技能越多、越深,架构师的能力也就越强。

思考:经验和视野都是外部输入,但是输入不进行有效的转化并没有太大意义,而转化输入就需要架构师的思考。思考能够将经验和视野中的模式、判断、选择与技巧等提炼出来,化为自己的能力并运用到不同场合,同时它也促使产生新的创意和灵感。

再进一步具体到开发人员要学习哪些技能、如何学习才能成为架构师,下边李运华也都一一作了回复。

此外,问答中还有一些在架构设计中需要关注的问题: