架构师是做什么的?

架构师是做什么的?哈佛大学有一个非常著名的关于目标对人生影响的跟踪调查 调查的对象是一群智力 学历 环境等条件都差不多的大学毕业生 结果是这样的 第一类人 27 的人 没有目标 第二类人 60 的人 目标模糊 第三类人 10 的人 有清晰但比较短期的目标 第四类人 3 的人 有清晰而长远的目标 以后的 25 年 他们开始了自己的职业生涯 25 年后 又对这些调查对象跟踪调查 他们的职业和生活状况发生

这里写图片描述
哈佛大学有一个非常著名的关于目标对人生影响的跟踪调查。调查的对象是一群智力、学历、环境等条件都差不多的大学毕业生。结果是这样的:
第一类人:27%的人,没有目标;
第二类人:60%的人,目标模糊;
第三类人:10%的人,有清晰但比较短期的目标;
第四类人:3%的人,有清晰而长远的目标。
以后的25年,他们开始了自己的职业生涯。
25年后,又对这些调查对象跟踪调查,他们的职业和生活状况发生了很大的变化:
第四类人:3%的有清晰且长远人生规划的人,25年来几乎都不曾更改过自己的人生目标,并且为实现目标做着不懈的努力。25年后,他们几乎都成了社会各界顶尖的成功人士,他们中不乏白手创业者、行业领袖、社会精英。
第三类人:10%的有清晰短期人生规划者,大都生活在社会的中上层。他们的共同特征是:那些短期人生规划不断得以实现,生活水平稳步上升,成为各行各业不可或缺的专业人士,如医生、律师、工程师、高级主管等。
第二类人在另外的60%中人生规划模糊的人,几乎都生活在社会的中下层面,能安稳地工作与生活,但都没有什么特别的成绩。
第一类人:是那些没有目标和规划的人,几乎都生活在社会的最底层,生活状况很不如意,经常处于失业状态。
调查者因此得出结论:目标对人生有巨大的导向性作用。成功,在一开始仅仅是一种选择,你选择什么样的人生规划,就会有什么样的人生。











对于大多数开发人员,理想的职位都是软件架构师,觉得这是一个很体面而又很酷的工作。但是大多数人对软件架构师的职责没有一个清晰的认识,包括我自己。今天我就抛砖引玉,简单描述一下软件架构师是做什么的。

java知识平台已经开通原创保护功能,这跟小伙伴们的支持是分不开的,bert君在这里谢谢大家了。大家可以在文章底部留言,表达一下自己对架构师的看法。

架构一词大概是源于建筑学,也常指建筑物在其尺度上是如何依靠内部的支撑物相互结合而稳固构造的方式。而架构师则是为满足某种架构设计目标而进行在较大尺度上进行整体构思的角色。

在软件工程和企业信息系统领域,又有很多细分,如所谓的系统架构师、应用架构师、企业架构师等等。

一般来说,应用架构师负责构建一个以解决特定问题为目标的软件应用的内部结合结构,一般以满足各种功能性需求以及维护性需求为设计考虑目标;系统架构师则提供运营支撑软件应用的信息系统的结构设计,一般以满足各种非功能性需求或运营性需求为设计目标(如安全性、可伸缩性、可互操作性等等);企业架构师,就不光只顾IT系统的架构了,他应以企业的持续经营目标为考虑要素来构建企业所需要的内在结构设计。

这里写图片描述

那么软件架构师是做什么的?bert君认为:

架构师首先必须要了解需求和业务,架构师必须接地气。

不了解需求的架构师,就去设计架构,指挥大家干活,纯粹是耍流氓。架构虽然不是产品经理,但是产品最终都是服务客户的。如果架构师只懂技术,不考虑需求,做出的系统可能是高大上,但是用户不一定买账,那就是一个失败的产品了。

其次,架构师需要定义架构。

搞清楚需求后,下一步就是思考,如何解决这些需求并定义它的架构。架构定义过程让你想清楚你打算怎么在兼顾需求和限制的情况下把问题解决好。架构定义是将结构,方针,原则和领导力引入软件项目的技术层面。

第三,架构师还需要进行技术选型,选择哪种技术来支持业务的实现。

这里注意的是,不一定要选择那些潮流技术,选择什么技术,要看自己的场景。有时候,选择一些最原始的技术,没准更适合自己的业务场景。技术选型是很重要的,选择正确的技术,就能事半功倍。如果选择不好,那么就会欠技术债务,不仅影响产品的开发周期,还会影响产品的稳定性。

第四,架构师需要进行架构协作。

这里的架构协作,不仅仅指技术方面了。一个好的产品,牵涉到很多人即“项目干系人”,要想让一个软件项目成功,需要所有的系统干系人紧密协作来保证架构和所在的环境很好的集成。

第五,架构师还可以参与一些设计,开发,测试的工作。

还是那句话,架构师要接地气。真正去使用自己的产品,不仅能对产品进度很好地把握,还能在使用中发现产品架构存在的问题,及时修补和调整。另外,这样做的另外一个好处,就是架构师能够真正融入团队,并不是高高在上的。这不仅不会削弱你的权威,相反,能够让下属更尊重你,这也是领导力养成的一个重要途径。

最后,bert君在招聘网站摘录了一些对架构师的要求,供大家参考,希望有这个目标的小伙伴,不断努力,早日实现。

  1. 熟悉分布式、高性能架构和开发技术,如分布式应用开发、数据分布式管理和同步等;
  2. 精通J2EE系统架构,深刻理解J2EE架构的优缺点,具有大型基于J2EE体系结构的项目规划、系统架构设计、开发经验,精通j2ee设计模式;
  3. 深刻理解软件系统架构,精通面向对象分析设计方法,逻辑能力佳,具有丰富的OOA、OOD、OOP、UML及SOA经验,精通RationalRose、PowerDesigner等设计工具;
  4. 技术视野广阔,具有良好的前瞻性,思路清晰、逻辑性强,对移动支付和互联网支付的相关技术具有优秀的领悟力和前瞻性,有较强的业务分析能力;
  5. 良好的沟通能力、团队合作精神和服务意识;认真负责、具有高度责任感和敬业精神;
  6. 对于性能瓶颈可以给出最优的切片,集群和分布式服务器搭建解决方案
  7. 理解面向对象分析和设计的基本原则,熟悉常用的设计模式,熟悉UML;
  8. 熟悉Java的多线程,线程与线程,进程与进程的通信机制;
  9. 精通系统优化,对系统优化原理有深入的理解。对系统端到端性能优化有丰富的实践经验,熟悉各种远程本地Cache组件(尤其是Memcached,Redis),对Cache服务器集群架构有丰富的经验;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207229.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午2:17
下一篇 2026年3月19日 下午2:17


相关推荐

  • C++多线程并发(五)—原子操作与无锁编程

    C++多线程并发(五)—原子操作与无锁编程一、何为原子操作前面介绍了多线程间是通过互斥锁与条件变量来保证共享数据的同步的,互斥锁主要是针对过程加锁来实现对共享资源的排他性访问。很多时候,对共享资源的访问主要是对某一数据结构的读写操作,如果数据结构本身就带有排他性访问的特性,也就相当于该数据结构自带一个细粒度的锁,对该数据结构的并发访问就能更加简单高效,这就是C++11提供的原子数据类型<atomic>。下面解释两个概念:…

    2022年6月8日
    59
  • mybatis xml 格式化时间查询

    mybatis xml 格式化时间查询格式化到时分秒也可以到天<iftest=”beginTime!=null”>andDATE_FORMAT(send_time,’%Y-%m-%d%H:%M:%S’)&gt;=DATE_FORMAT(#{beginTime},’%Y-%m-%d%H:%M:%S’)</if><iftest=”endTime!=null”&g…

    2022年7月16日
    77
  • Postman汉化补丁

    Postman汉化补丁版本 9 0 5 更新时间 2021 10 10 系统 macOSBigSur1 2 3 Intel 汉化包地址 链接 https pan baidu com s 16x zpkyFxY4rYrd 提取码 6p87 操作方式 下载链接 https pan baidu com s 16x zpkyFxY4rYrd 提取码 6p87 解压 app zip 进入访达 应用程序 Postman app Contents Resourc

    2026年3月16日
    1
  • OpenClaw最佳工具榜

    OpenClaw最佳工具榜

    2026年3月12日
    4
  • css两端对齐

    css两端对齐两端对齐在导航 Nav 的制作中非常常用 例子例如下面这个例子 在导航栏中 我们希望左边的 nav 文字左端对齐 右边的 button 有段对齐 并且导航栏部分居中 和上边 banner 中的文字 以及下边的内容居中对齐 概念 flex 弹性盒模型 flex 作为强大的弹性布局方式 可以 hold 住大部分的布局效果 当然也包括两端对齐 可以使用主轴对齐 justify content 的两端对齐属性 space between display flex 应用 flex 布局 justify content space be

    2026年3月20日
    2
  • word2vec原理剖析

    word2vec原理剖析本文根据word2vec中的数学原理详解整理而成。根据word2vec算法的原理,大概总结如下;1)由统计语言模型发展到n-gram模型,再由n-gram模型发展到NNLM模型,最后到word2vec模型;2)word2vec模型包括CBOW模型和Skip-gram模型;3)对于CBOW模型和Skip-gram模型,又分别有基于HierarchicalS…

    2022年5月13日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号