辣妈27,柯宝一岁,爱写写画画的程序员
进入了一家创业型公司,自荐往系统架构师上靠,整理笔记,与之分享。
how to become a software architect:
下面是Daniel Mohl所提出的列表,供大家参考:
首先,你必须不断地寻求改善和提升自己。而提升自己的最好方法是阅读,下面有几本书,对我的软件架构技能的提升很大。推荐给大家:
(12本书,全部买纸质的,1K,虽是程序员,但还是喜爱古老的阅读方式)
- 软件架构师应该知道的97件事
- 企业应用架构模式
- 敏捷软件开发,原则,模式和实践
- 企业集成模式
- JavaScript语言精髓
- 利用遗留代码有效地工作
- 领域驱动设计
- 企业架构策略
- 设计模式(四人帮)
- The Goal
- SOA设计模式
- SOA Principles of Service Design
除了阅读,还有没有其他需要注意的、或者在平时需要关注的东西呢?
- 每隔一两年学习一门新语言
- 选择一个重点领域,但是尽可能对许多技术有个高层次的理解(现在处在应用领域)
- 对你所关注的重点领域,开通一个博客并且继续拓展该领域的知识面,让自己渐渐成为一名专家。(在努力)
- 与不同的技术、编程语言、设计模式和结构等(甚至是它并没有在日常中给予你直接的帮助)打交道。你永远都不知道这些知识是否会在未来派上用场,但是对你绝对是有益无害。
- 根据你的目标受众来谈论“语言”。作为一名架构师,你将会与各种各样等级的人打交道,并且他们对技术的理解也会有所不同。所以要学会调整你的讲解方式,做到因人制宜,让他们能够理解。
- 阅读博客、观看/参加Twitter或G+、听播客、读杂志、参加用户小组会议和技术会议,并且在这些会议上踊跃发言。这些都会给你带来无穷无尽的知识和乐趣,建立自己的“品牌”和提供交流机会。
- 纪律是关键。永远做你自己最喜欢的工作,即使它听起来不那么有趣。每天安排时间学习一些新的东西,即使是15分钟也可,千万不要被其他事情占用了这段时间。
- 开启博客之旅。我发现,与阅读比起来,把东西写下来会让你有更深入的理解。
- 利用好“闲暇时间”,这段时间可以拿本杂志读读,或者去听听播客等。
- 了解各种可用的开发工具,可以使架构师的工作更好、更有效
- 看许多不同项目里的架构
- 学习各个项目的管理方法
- 学习一些评估技术,对业务可以提供有价值的评估
上面是作者总结出来的列表,虽然看起来有点枯燥无味,但在整个软件开发过程中是乐趣无穷的。如果你还有更好的建议,欢迎与我们分享。