如何成为一名软件架构师?

这是13年当编辑那会儿翻译的文章,英文原文地址:How to Become a Software Architect
译文地址:如何成为一名软件架构师?

现在统一搬到自己的博客 。

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

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

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

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

  • 软件架构师应该知道的97件事
  • 企业应用架构模式
  • 敏捷软件开发,原则,模式和实践
  • 企业集成模式
  • JavaScript语言精髓
  • 利用遗留代码有效地工作
  • 领域驱动设计
  • 企业架构策略
  • 设计模式(四人帮)
  • The Goal
  • SOA设计模式
  • SOA Principles of Service Design

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

  • 每隔一两年学习一门新语言,F#是个不错的选择。
  • 选择一个重点领域,但是尽可能对许多技术有个高层次的理解
  • 对你所关注的重点领域,开通一个博客并且继续拓展该领域的知识面,让自己渐渐成为一名专家。
  • 与不同的技术、编程语言、设计模式和结构等(甚至是它并没有在日常中给予你直接的帮助)打交道。你永远都不知道这些知识是否会在未来派上用场,但是对你绝对是有益无害。
  • 根据你的目标受众来谈论“语言”。作为一名架构师,你将会与各种各样等级的人打交道,并且他们对技术的理解也会有所不同。所以要学会调整你的讲解方式,做到因人制宜,让他们能够理解。
  • 阅读博客、观看/参加Twitter或G+、听播客、读杂志、参加用户小组会议和技术会议,并且在这些会议上踊跃发言。这些都会给你带来无穷无尽的知识和乐趣,建立自己的“品牌”和提供交流机会。
  • 纪律是关键。永远做你自己最喜欢的工作,即使它听起来不那么有趣。每天安排时间学习一些新的东西,即使是15分钟也可,千万不要被其他事情占用了这段时间。
  • 开启博客之旅。我发现,与阅读比起来,把东西写下来会让你有更深入的理解。
  • 利用好“闲暇时间”,这段时间可以拿本杂志读读,或者去听听播客等。
  • 了解各种可用的开发工具,可以使架构师的工作更好、更有效
  • 看许多不同项目里的架构
  • 学习各个项目的管理方法
  • 学习一些评估技术,对业务可以提供有价值的评估

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

你可能感兴趣的:(编辑那些事)