如何成为技术架构师?

时间:2010-11-22 07:04:50

标签: architecture

我花了3年多的时间学习dotnet(C#)编程,现在想要研究框架/设计的东西。

我决定将来成为一名优秀的建筑师。我知道为此,我需要努力工作。我准备好了。

我不知道的是如何开始?

为了帮助我获得正确的踏脚石,你们能够善待我们吗?

由于

4 个答案:

答案 0 :(得分:21)

更新:这两个链接都已损坏,我将尝试找到一些替换内容,但同时此页面包含不同架构类型的列表,FWIW:http://en.wikipedia.org/wiki/Systems_architect

~~~~~~~~~~~~~~~~~~~~~~~~~~~

这取决于您所谓的“Technical Architect”,以及您想去的地方。 此外,您的体验(就您所描述的而言)与编程/软件相关,因此术语“技术架构”可能并不完全是您所追求的。

据我了解,技术架构师更关注标准是如此,而软件架构师则更多地处理代码和设计模式。

我对你的一般建议是:

  • 研究:阅读书籍,文章,博客和(最重要的)......
  • 互动:与实际建筑师讨论他们做了什么以及如何到达那里。当然你可以在这样的论坛上提问,但深入彻底的讨论是你所追求的 - 而不仅仅是一两个。这样做的一种方法是......
  • 加入您所在地区的当地建筑师论坛或社区团体,或参加奇怪的谈话。像Tech Ed这样的大型会议将有一个架构轨道 - 所以要留意有趣的话题。
  • 等你时间:在软件开发8年后,我获得了“解决方案架构师”的正式称号,这可能是快速的;所以要做好准备,进行漫长但“深入”的旅程。
  • 就域名而言,您是希望留在软件中还是迁移到基础架构中?也许是安全专家?要知道的唯一方法就是把手弄脏;并且拥有大量的广泛经验(例如基础设施,安全性,数据)确实在软件架构等方面很好地增强了深度“重心”。

在路上要考虑的事情:

  • 作为一名建筑师,不仅要提出技术问题的技术解决方案,还要(至少一半)关于“软技能”......
  • 领导开发团队/项目团队,为项目经理提供建议;他们会期待你的指导。
  • 解决歧义,处理相互冲突的需求。业务问题分析等。
  • 在广场外思考并询问(重新询问)基本问题,例如:问题:“X的最佳方式是什么?”,你的答案:“为什么X首先出现?”

仅供参考,“Aspiring Architects”是我最喜欢的话题 2017年1月更新 - 最后更新了断开的链接(2010年写的内容!),另外添加了一个关于如何定义architecture-roles的新链接。

答案 1 :(得分:4)

建造真实建筑的真正建筑师将花费大部分时间来研究建筑规范,与计划权利和投资者讨论成本。

因此,解决方案架构师将花费大部分时间来确保解决方案符合站点上的各种安全和开发标准,符合企业路线图等,并讨论预算等,并与定义接口的其他团队合作和同步计划。

一位真正的建筑师很少有机会成为理查德罗杰斯并为一个拥有大笔资金的客户在新网站上建立一个重要的建筑,而是为投机开发人员设计“千篇一律”的房子,为现有的建筑添加扩展或改造旧的建筑建筑物用于新用途。

同样,IT架构师将花费他或她的专业生活的大部分时间在有限的预算,有限的时间范围内加强或替换现有系统的部分,并受到现有技术的严格限制。

因此,我的建议是掌握您工作的各种标准和程序,并尝试在工作中处理架构流程以及在组织中使用的术语。如果你是一名程序员,你已经了解了所需的所有技术知识。

答案 2 :(得分:3)

当我将一个大型遗留系统重构为模块化体系结构时,我亲自学到了很多东西,在这种体系结构中,您将旧代码分层并将其与一些依赖注入或基于常见体系结构模式的其他抽象粘合在一起。像这样你可以看到常见的错误是什么,以及为什么从一开始就把努力付诸于模块化系统是有意义的。

  1. 关于构建可以随时维护的系统的一切。可测试性和模块是关键!
  2. 您必须了解模式,并了解它们何时可以提供帮助以及为什么
  3. “关于不同的技术使用了你工作的文件以及如何将它们粘合在一起
  4. “关于配置一个可以用最少的工作量在不同的环境中使用的大系统
  5. “关于可以衡量像pmd这样的优秀架构的工具,java世界中的findbugs
  6. “关于设置代码,测试,构建允许敏捷开发的环境......
  7. 还有更多......
  8. 架构系统是一项巨大的责任,如果做错了,它可以搞砸一切。
  9. 我个人不会让别人在不少于10年的经验的情况下做出任何重大的架构决策。

答案 3 :(得分:1)

我认为要成为一名优秀的技术架构师,您应该熟练掌握设计模式,WCF,WPF,报表工具,C#,SQL Server等。