优秀的架构师需要那些专业和软技能?

原创 2016年12月19日 00:36:56

这段时间时间一直在想,优秀的架构师需要那些专业和软技能?参考了网上一个资料并结合自己的切身体会和想法,分享如下,希望能对同道中的朋友有所帮助。

# 专业技能

@面向对象的OOP理解,真正的理解,而不是只知道概念

@丰富的web应用系统设计经验,有大型网站系统架构经验者优先;

@优秀的数据库设计和优化能力,熟悉Oracle、Mysql或MSSQL等主流数据库管理系统、相关技术及工具。

@深入理解数据结构及算法,熟练掌握面向对象设计的基本原则和常用的设计模式并有丰富的使用经验;

@熟悉性能优化、精通分布式、多线程等高性能架构相关技术;

@常用的消息中间件: ActiveMQ, Mosquito, RabbitMQ

@如何设计一个一个高可用性,高性能的系统,所以负载均衡相关的知识比不可少,现在比较流行的有Nginx,HAProxy

@ 对NoSQL数据库的原理和优缺点

@ 缓存是解决大型网站性能和高并发的比不可少的设计,了解当前流行缓存设计的可用框架,比如,Redis等

@ 面向服务的体系结构(SOA),微服务和分布式系统的优缺点和应该场景

@主流的开源框架,Spring, Hibernate,Spring MVC, Apache,Google, 或者Github上的一些流行开源框架

@ DSL: Domain Specific language,面向业务领域的语言,这样可以让我们和非开发人员更方便的进行思想交流和沟通

@如果没有大数据方面的经验的话,至少要了解其基本的原理,已经当前流行的框架。

@常用的数据结构和算法,比如Hash散列算法,最优化方法,贪心算法等等。

@ 有超过两种语言的使用经验,比如Java, Ruby

@ 关注良好的编程专业方法和质量,比如,TDD,BDD,绝对是加分项。


# 软技能

@优秀的学习能力,分析和解决问题的能力和强烈的进取心;
@诚恳、踏实,对技术和工作充满热情;

@具备良好的沟通能力和团队合作精神。
@良好优秀的英语能力,能自己看懂英文电子书,能在国外的StackOver,Github等平台上用英语进行提问或者发布自己想法

@如果能够参与开源项目,绝对是加分项。

@ 如果能够看懂技术英文视频,你的学习效率将会大大提高。

@对于项目风险和客户需求的游刃有余的把控能力。

@能够把复杂的概念用简单形象的语言表达出来。


版权声明:本文为博主原创文章,未经博主允许不得转载。

一个在线练习编程的网站

在笔者转发一篇非常有意思的文章:http://blog.csdn.net/chancein007/article/details/53731514中提到什么是“编码套路”(Code Kata),而且提...

在CSDN上6,7月份的收获

6,7月份一口气在CSDN上面写了22篇文章,收获很多, 不但自己总结了在平常学习过程中的经验,而且还收获了不少的朋友,好多CSDN上的朋友都关注了我并成为我的粉丝,有的还加了我的QQ或者微信成了好友...

软件架构师应该知道的97件事(分享领导力、技能、思维模式、沟通、博弈,53位优秀架构师各展绝技)

1. 客户需求重于个人简历 ( Nitin Borwankar ) 客户需求至上。为了自己的简历更炫而采用新技术是沽名钓誉,往往事与愿违。 2. 简化根本复杂性 ,消除偶发复杂性 ( Ne...

个人总结的一个中高级Java开发工程师或架构师需要掌握的一些技能

近三年,其实都是在做一个项目,项目很大
  • gokeibi
  • gokeibi
  • 2014年11月09日 22:44
  • 7948

成为一个高级Java架构师所需要具备那些技能呢?

高大上的淘宝架构 上图是一些安全体系系统,如数据安全体系、应用安全体系、前端安全体系等。 架构师定义 百度百科,系统架构师是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的...

成为java架构师需要具备那些技能?

架构师定义 百度百科,系统架构师是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物。 架构师工作职能 软件架构师在整个软件开发过程中都起着重要的作用,并随着开发进程...

个人总结的一个中高级Java开发工程师或架构师需要掌握的一些技能

近三年,其实都是在做一个项目,项目是一个大型的多节点部署的项目,做了好几个版本,中间用到了很多技术和框架, 也用了一些管理工具和敏捷实践。我这里不是来说项目的,因为最近看了一些招聘信息,结合项目中用...
  • H12KJGJ
  • H12KJGJ
  • 2017年12月06日 15:54
  • 53

个人总结的一个中高级Java开发工程师或架构师需要掌握的一些技能

近三年,其实都是在做一个项目,项目是一个大型的多节点部署的项目,做了好几个版本,中间用到了很多技术和框架, 也用了一些管理工具和敏捷实践。我这里不是来说项目的,因为最近看了一些招聘信息,结合项目中用...

个人总结的一个中高级Java开发工程师或架构师需要掌握的一些技能

近三年,其实都是在做一个项目,项目是一个大型的多节点部署的项目,做了好几个版本,中间用到了很多技术和框架, 也用了一些管理工具和敏捷实践。我这里不是来说项目的,因为最近看了一些招聘信息,结合项目...

成为一个高级java架构师所需要具备那些技能呢?

所谓架构师,思考的是全局的东西,是如何组织你的系统,以达到业务要求,性能要求,具备可扩展性(scalability),可拓展性(extendability),前后兼容性等。可能涉及到的东西包括了从硬件...
  • zane3
  • zane3
  • 2017年04月28日 18:35
  • 374
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:优秀的架构师需要那些专业和软技能?
举报原因:
原因补充:

(最多只允许输入30个字)