如何才能从程序员成长为实战型架构师?必掌握这7大实战技能经验

想成为一名架构师,可是架构师对应的技能,我应该掌握哪些啊?以及掌握的程度是什么样的?如何成为一名真正的实战性架构师?前端

我简要分为如下7点来谈谈,从技能的角度抛砖引玉,但愿你对你架构师之路有必定的参考。mysql

 

编程基本功:数据结构和算法

 

若是你一直关注,会发现我以前分享的阿里面试题系列,有许多关于算法内容,好比:HashMap如何扩容,底层的数据结构发生了怎样的转变。程序员

这就是典型的数据结构基本功,这些掌握很差,在实际编程过程当中,对于性能效率你是不清楚的。所以,我一直强调要重视算法,而且认为至少应该掌握下图中的这几种经常使用算法:数据结构相关的哈希表、链表、二叉树等等。web


 

 

编程基本功:Java编程面试

这些都算是编程基本功底:多线程、JVM、并发容器、并发类、NIO等。算法


 

 

Web开发

 

web开发这个领域,若是你要掌握好了,发展也很是不错。sql

好比:如今的H五、小程序等,对于掌握前端技术的开发人员,竞争力杠杠。mongodb

固然做为后端开发人员,多掌握点前端的技术,那也是必须的。数据库


 

 

数据库

 

重点都圈在下图了,这里涉及的技术仍是蛮多的,mysql、oracle、nosql相关的mongodb,以及现在你们都熟知的分库分表、读写分离等技术。编程

除了你们熟知的部分,我补充几个设计相关的内容:数据库设计范式、索引、事务、数据库相关的慢查询、长事务,这些在高并发的状况下,这些也算是数据库技术的编程功底。


 

研发相关的框架工具

 

Java程序员对于下图应该都是比较熟悉的,这些框架与工具都是常常使用。


 

 

架构设计

 

谈到设计,就不得不提到项目中的概要设计和详细设计,这就会涉及到UML。

除此以外,整个项目的设计,这个时候考验你的架构设计能力。


 

这里的架构设计,包含的系列很是多,特别是Redis、应用程序拆分、拆分后涉及到的RPC微服务等技术,以及后端数据库的拆分技术,以及拆分后的分布式集群部署。

 

分布式会涉及到:分布式锁、全局惟一ID的生成、分布式Session…这里还有蛮多的,其实大部分我都分享过了,基本都在以下的的分布式系列分享专题资料。


_

 

从程序员到架构师,是很大的职业转变,也是很多程序员的职场规划路线。以上是我多年从业经验总结,分享给喜欢Java,喜欢编程,有梦想成为架构师的程序员们,但愿可以帮助到大家。

我是mike,10年+程序员。曾前后就任于淘宝、盛大、百度、携程 ,历程高级研发工程师、研发经理、架构师、事业部CTO。坚持写文1年多,原创内容接近400篇,目前粉丝总数7万+,主要分享:BAT面试、架构、招聘等技术内容。

欢迎留言或进个人我的群179961551,本群专用于学习交流技术、分享面试机会,拒绝广告,我也会在群内不按期答题、探讨。  

相关文章
相关标签/搜索