如何成为一名软件架构师

Daniel Mohl是一名专业的软件工程师/架构师,他的兴趣包括理解各种复杂的编程语言、企业应用架构以及如何搭建业务与技术,他通晓F#、C#、CoffeeScript、JavaScript、Erlang、ASP.NET、MVC、WPF、WCF、Sliverlight、SQL Server等技术。有着多年的软件开发经验。

他经常会被一些有潜力和有前途的程序员问到:“我要怎么做才能成为一名架构师?”说实话,这已经是老生常谈的话题了,答案当然是视情况而定。不过他也根据自己的经验,给大家一些建议,并且提供一些资料,助你快速走上架构师这条道路。

1.jpg

下面是Daniel Mohl所提出的列表,供大家参考:

首先,你必须不断地寻求改善和提升自己。而提升自己的最好方法是阅读,下面有几本书,对我的软件架构技能的提升很大。推荐给大家:

除了阅读,还有没有其他需要注意的、或者在平时需要关注的东西呢?

  • 每隔一两年学习一门新语言,F#是个不错的选择。

  • 选择一个重点领域,但是尽可能对许多技术有个高层次的理解

  • 对你所关注的重点领域,开通一个博客并且继续拓展该领域的知识面,让自己渐渐成为一名专家。

  • 与不同的技术、编程语言、设计模式和结构等(甚至是它并没有在日常中给予你直接的帮助)打交道。你永远都不知道这些知识是否会在未来派上用场,但是对你绝对是有益无害。

  • 根据你的目标受众来谈论“语言”。作为一名架构师,你将会与各种各样等级的人打交道,并且他们对技术的理解也会有所不同。所以要学会调整你的讲解方式,做到因人制宜,让他们能够理解。

  • 阅读博客、观看/参加Twitter或G+、听播客、读杂志、参加用户小组会议和技术会议,并且在这些会议上踊跃发言。这些都会给你带来无穷无尽的知识和乐趣,建立自己的“品牌”和提供交流机会。

  • 纪律是关键。永远做你自己最喜欢的工作,即使它听起来不那么有趣。每天安排时间学习一些新的东西,即使是15分钟也可,千万不要被其他事情占用了这段时间。

  • 开启博客之旅。我发现,与阅读比起来,把东西写下来会让你有更深入的理解。

  • 利用好“闲暇时间”,这段时间可以拿本杂志读读,或者去听听播客等。

  • 了解各种可用的开发工具,可以使架构师的工作更好、更有效

  • 看许多不同项目里的架构

  • 学习各个项目的管理方法

  • 学习一些评估技术,对业务可以提供有价值的评估

上面是作者总结出来的列表,虽然看起来有点枯燥无味,但在整个软件开发过程中是乐趣无穷的。如果你还有更好的建议,欢迎与我们分享。

转自:http://blog.csdn.net/hguisu/article/details/8549353

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/2655

(0)
s19930811s19930811
上一篇 2016-03-22
下一篇 2016-03-22

相关推荐

  • rsyslog记录日志于mysql

    rsyslog记录日志于mysql:     前提:准备好msql server或mariadb server;     (1) 安装rsyslog连接至mysql server的驱动模块;        &n…

    Linux干货 2016-12-05
  • 马哥教育网络班19期第二周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cd:切换目录命令实例  cd [dirctory] 切换目录  cd .. 返回上一级目录  cd –  来回切换  cd ~  切换到家目…

    Linux干货 2016-06-19
  • 22期第二周课堂练习

    Linux上文件系统管理类命令都有哪些,其常用的使用方法及其相关示例演示     (1).cp文件复制命令     单源复制:cp [OPTION]… [-T] SOURCE DEST     多源复制:cp&nbs…

    Linux干货 2016-08-22
  • Apc缓存Opcode

    1、PHP执行 PHP的运行阶段也分成三个阶段: Parse。语法分析阶段。 Compile。编译产出opcode中间码。 Execute。运行,动态运行进行输出。                            …

    Linux干货 2015-04-10
  • yum报错2

    我的系统是centos 6.8 x86的; 安装pam_mysql时报错如下: [root@Ams ~]# yum install pam_mysql -y Loaded plugins: fastestmirror, refresh-packagekit, security Setting up Install Process Loading mirror…

    Linux干货 2016-08-02
  • Linux终端的类型

    Linux终端可以分为如下几种类型    1、物理终端:是指通过键盘显示器直接连接到主机的方式,我们也称之为console端。    2、虚拟终端:是利用软件的方式模拟实现类似物理终端的访问方式,通常Linux内核开启6个虚拟终端,分别使用Ctrl+Alt+F1~F6实现不同tty虚拟终端之间的切换,供多用户或者多任务…

    Linux干货 2016-10-29