架构师工程攻城略地需要具备的八大核心能力

业界对于架构师一直存在一些误解,像上面的这种观点不在少数。而在很多具体实践中,也存在这样的情况:一方面对架构设计工作不重视,拿到需求,几乎没有任何设计,一上来就撸代码;另一方面随着需求不断迭代,项目逐渐失控陷入混乱,又开始埋怨当初没有好好做设计。

不过,也能理解为什么会存在这样的误解。毕竟,编程和架构几乎是完全不同的两项工作,并不是你有了多年编程经验就能自动获得架构设计的能力,就能成为架构师。做编程,只要根据给定的功能模块和技术要求,完成开发工作就可以了。而做架构,需要全局思考各种技术、业务、资源要求,根据要求,寻找最合适的架构方案。事实上,如果你没有从架构师的角度思考问题,带领团队,整体完成一个系统的架构设计与开发,那么你永远也不会了解如何做一个架构师。而你不去做一个架构师,又永远没有机会带领一个团队,完成一个系统的架构设计与开发。

这里似乎形成一个死循环,而突破死循环的关键在于两点:

  1. 你表现出优秀的开发能力,让领导相信,即使你没有架构设计与领导开发的经验,你也能做好架构师这一角色,从而任命你做架构师。

  2. 你在成为架构师之前,就掌握了足够的做架构的方法和技能。在被任命为架构师之后,不会手足无措把事情搞砸,而是能够有条不紊开展工作,打好你的架构设计第一仗。

更好的理解架构设计,成长为一个架构师,主要的困难在于:

  • 你是否在编程这件事上表现出足够的优秀,从而获得做架构的机会。

  • 你是否掌握架构设计的一般方法,能够把握好做架构设计的机会。

  • 你是否拥有足够的关于系统架构设计的知识储备,能够在软件架构的生命周期以及你自己的职业生涯中,不断迭代进步,使你负责的系统和你自己的职业前景都变得越来越好。

看到这里有的人会问:我该如何成为一个优秀的架构师?一个优秀的架构师应当具备怎样的素养。换句话说,优秀架构师应该拥有哪些能力?

根据我 15 年的架构设计经验,我总结了架构师 8 大核心能力:

  • 优秀的编程能力

  • 设计文档的能力

  • 模块分解的能力

  • 大规模复杂系统架构的能力

  • 掌握典型技术解决方案的能力

  • 系统优化以及保障系统稳定的能力

  • 数据处理与应用的能力

  • 领导与管理能力

你可能感兴趣的:(架构微学堂,架构)