0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样成为一名优秀的Java架构师

工程师人生 来源:网络整理 作者:工程师吴畏 2018-10-17 09:07 次阅读

和大家介绍下我目前所从事的工作。

我目前从事分布式服务架构的设计与开发工作,在阿里的大数据平台上进行应用程序开发。我们整个系统架构采用了“前后端分离”的思想,前端关注数据展现,后端关注数据生产,通过 REST服务将前后端整合起来,所有的应用都是无状态的,可以做到水平扩展。我们将整个系统拆分成许多“微服务”,服务之间通过统一的接口来调用,每个服务是通过容器技术进行隔离,此外服务可发布到统一的服务管理平台上,可通过该平台监控每个服务的运行状态与生命周期事件,并为服务调用者提供了服务发现的能力,可对服务进行平滑升级。

阿里有许多优秀的中间件与基础服务,可以快速帮助我们搭建应用系统,而且这些技术在阿里内部全是开源的,大家可以通过源码和文档学习到很多有价值的经验。阿里也提供了浓厚的技术氛围,每位同学都非常专注于自己的工作领域,大家对工作一丝不苟,相互配合,方向一致。

我是如何走上技术这条路的?

2008 年大学毕业,我离开了母校武汉理工大学,在院长薛胜军老师的推荐下,我来到了上海,这个对于我来说非常陌生的地方。我有幸加入了一家名为“动量软件”的创业公司,这家公司的老板曾经是亚信科技的 CTO,他也是普元软件的创始人兼 CTO,他的名字叫黄柳青,他也是薛老师的大学同学。于是就这样,我的老板成为了我的老师,我习惯叫他黄老师,包括公司其他资深的同事也成为了我的老师,因为我很想他们身上学到更多有价值的东西。

刚开始工作的时候我学习了什么是云计算?什么是 SaaS、PaaS、IaaS?我们花了三年时间开发了一款名为 ODE 的 PaaS 平台,让用户可以在该平台上量身定制自己的软件,最终为客户提供基于 SaaS 的产品。确实很骄傲,那时我们已经在做云了,只是没想到后来云会在中国得到这么好的市场,可能当时只有黄老师一个人想到了吧。

在 2008 年,我为公司拿回了“第一桶金”,这也是我从程序员转向项目经理的里程碑。当时我带领团队远赴深圳,为国信证券公司开发经纪人管理系统,这个项目对于我个人而言却是一笔至高无上的财富,我开始学习如何与人打交道,如何做需求分析,如何将需求转变为技术,如何带领团队小伙伴一起工作。学到了太多太多,但我依然选择在我工作第四个年头里离开了动量软件,我刚加入动量软件的时候,公司只有 5 个人(包括老板和前台),当我离开动量软件的时候,公司已经有 200 人左右了。感谢黄老师!我在他身上学到了很多,他的思想和态度直到今天都还在影响着我。

我的第二份工作还是选择了我最熟悉的证券金融行业,同样也是一家创业型公司,在这家公司里我担任了技术经理,管理了整个技术团队,从项目的售前到售后,我都亲自带领团队来完成。虽然在这家公司我只做了两年,但在这短短的时间里,我学会了如何提高开发效率、如何培养技术团队、如何选拔技术人才、如何建立企业文化。但最后我发现了一个问题,越是想做好,越是很难做好,为了做成一件事情需要做很多的尝试,做事情缺乏正确并有效的方法。

如何让自己成为一个优秀的Java架构师,而不是码农

回想我工作的前六年时间里,我一直都是在创业公司里成长,虽然可以快速学到东西,但似乎很难学到更加规范的做事方法。于是我选择了新的工作机会,来到了 TCL 通讯,这是一家相当大的公司,公司的研发管理流程来源于法国阿里卡特公司。我在公司担任 Java 架构师职位,也算是整个 Java 团队的技术负责人,虽然团队并不是特别地大。我在这家公司做了三年,学到了如何整合现有资源、如何按标准流程去做事、如何设计系统架构、如何进行异地工作、如何跨团队工作、如何用英文来沟通。说实话,当时我没有任何的工作压力,可以按时上下班,从来都不会加班。虽然自己空闲的时间很多,但我并没有选择去浪费时间,而是开始写点技术博客,也正是因为这些技术文章,才改变了我后续的职业发展道路。

Java 会在很长的一段时间内是主流,现在做Java Web开发都用哪些框架呢?

常用的比如Spring MVC、Struts2 等,国内的 JFinal、Nutz 等也不错,当然Smart 也是一个很好的选择。

有一定Web前端开发经验的人,很多都会有这么个想法:那些写框架的人好厉害,什么时候我才能写一个自己的框架呢?有时候看看别人的框架代码,又觉得很复杂,对此我有一些建议以及新人学习需要什么基础?分享一些好的方法。

抽象能力:对业务和技术进行抽象。业务抽象就是对需求进行分析后,能够建立完美的实体类以及他们之间的联系。技术抽象是对整体架构进行一个分层,各层之间的交互。这至关重要,如果技术抽象能力不足,这会导致整个系统的架构不灵活,难以维护和扩展。

知识的深度:至少是某个领域的专家,比如消息队列,activeMQ熟悉其源码,知道其实现。

优秀的学习能力:对新的技术和前沿性的技术进行学习,使用它来解决工作中的业务问题。

那么你该如何去做呢?我觉得可以从以下几个步骤开始:

1: 扎实的JAVA 基础,Think in java上介绍的内容都能理解,做到这一步恭喜成为了程序员。

2:熟练使用主流框架,如:mybatis,spring 等。

3:研究过至少一种以web框架的源码,如spring mvc ,struts 等。

4:架构过或者参与过高并发系统设计,知道如何应对突发情况。

5:对自己所处的业务能够根据自己的知识维度,提出优化建议或者预测其风险点。

其实能否成为架构师跟机遇有很大关系,比如一个程序员,以上都做到了,但是公司并没有给他这个机会去做,一个真正架构的机会。因为之前的架构师不离职他就没有机会,这就是现实!

技术人的归途

走技术这条路,归途是什么?是否转型又该如何抉择呢?

至少有好几条路线是可以走的,比如:深入技术、转型做产品、转型做管理等,需要根据自己的特长和性格来选择,做自己喜欢的事情。

从技术转管理,对自身的要求比较高,说具体点,需要看自己的情商,为人处世的经验,与人沟通的技巧,自己也需要有足够的胸怀,去包容一些事情,还需要自己有足够的人格魅力去吸引别人,让别人愿意跟着你一起做事。管理有些东西是很难从书本上学到的,但一些经典的管理理论是必须要去学的。

相比较而言,继续深入技术或者从技术转产品会容易一些了,因为很多时候都不太需要与人打交道。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2960

    浏览量

    104569
  • 架构师
    +关注

    关注

    0

    文章

    47

    浏览量

    4617
收藏 人收藏

    评论

    相关推荐

    架构师的自述:在尚未踏入的世界成为你自己

    这是我参与创作者计划的第1篇文章    我叫艾佳,工作经验14年,编程经验30年。 我来自智能平台部,负责标签平台、标签圈人、标签选品、EasyData、算法数据流的架构工作。 致力于批量
    的头像 发表于 09-23 15:25 332次阅读
    <b class='flag-5'>一</b>位<b class='flag-5'>架构师</b>的自述:在尚未踏入的世界<b class='flag-5'>成为</b>你自己

    润和软件连续四年蝉联数字业务类解决方案市场第一名

    ,连续四年蝉联数字业务类解决方案市场第一名。在细分领域:数字信贷系统解决方案子市场持续保持第一名,数字银行解决方案子市场稳居第二,开放银行解决方案子市场上升至第三。   数字业务类
    的头像 发表于 07-31 10:10 518次阅读

    如何成为一名优秀的天线微波工程?前华为终端天线负责人访谈来了

      点击文尾阅读原文查看 作者 | 程胜祥  仿真秀特邀专家 首发 | 仿真秀App 导读: 大家好,我是程胜祥,92年毕业于西安电子科技大学微波技术与天线专业。曾在华为公司负责华为公司所有研究所的手机、固定台、无线上网卡天线的研发工作。在中兴通讯天津研究所任天线和RFID标签开发部部长。在小米公司,于2014-2020独立负责整个公司电视类、音响类产品天线及无线性能。在清华大学,指导博士和硕士进行天线相关科研工作。在香港回归、澳门回归交
    的头像 发表于 07-03 08:44 457次阅读
    如何<b class='flag-5'>成为</b><b class='flag-5'>一名优秀</b>的天线微波工程<b class='flag-5'>师</b>?前华为终端天线负责人访谈来了

    中级自动驾驶架构师应该学习哪些知识

    个新兴且不断发展的职业。随着技术的进步,这领域将继续吸引更多人才,推动自动驾驶技术的发展。 自动驾驶架构师在设计和开发自动驾驶系统时将面临系列挑战,包括:安全关键的边缘情况、领
    的头像 发表于 06-20 21:47 264次阅读

    初级自动驾驶架构师应该学习哪些知识

    个新兴且不断发展的职业。随着技术的进步,这领域将继续吸引更多人才,推动自动驾驶技术的发展。 自动驾驶架构师在设计和开发自动驾驶系统时将面临系列挑战,包括:安全关键的边缘情况、领
    的头像 发表于 06-20 21:45 274次阅读

    省心元件供应让你做一名优雅的采购员

    元器件
    芯广场
    发布于 :2024年05月07日 17:54:12

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之成为一名嵌入式C语言高手
    发表于 04-07 16:03

    华润微电子以第一名的成绩荣获新吴区区长质量奖

    近日,无锡高新区(新吴区)召开2023年度高质量发展总结暨2024年工作推进会,会议隆重表彰了新吴区区长质量奖单位,华润微电子以第一名的成绩荣获新吴区区长质量奖。
    的头像 发表于 04-07 09:19 616次阅读
    华润微电子以第<b class='flag-5'>一名</b>的成绩荣获新吴区区长质量奖

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之成为一名嵌入式C语言高手
    发表于 03-25 14:12

    单片机如何通过代码控制硬件:一名工程的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 1401次阅读
    单片机如何通过代码控制硬件:<b class='flag-5'>一名</b>工程<b class='flag-5'>师</b>的分享

    C语言的指针用法

    C语言编程中善用指针可以简化些任务的处理,而对于些任务(比如动态内存分配),必须要有指针才行的。也就是说精通C指针编程是很有必要的,帮助你成为一名优秀的Cer。
    发表于 03-05 14:22 321次阅读
    C语言的指针用法

    HPM5300EVK 优秀测评报告(

    上海先楫半导体举办的HPM5361EVK开发板试用活动圆满结束,广大工程和爱好者们踊跃参与此次试用并提交报告。最终,先楫半导体专家组评选出6名优秀获奖者。感谢媒体平台EEWORLD电子工程世界
    的头像 发表于 03-05 08:19 857次阅读
    HPM5300EVK <b class='flag-5'>优秀</b>测评报告(<b class='flag-5'>一</b>)

    优秀电源工程需要哪些必备技能?

    就带大家细数优秀电源工程具备的那些技能。、新手必备课程成为一名电源高手需要扎实的理论基础
    发表于 01-29 11:29

    优秀电源工程的必备技能大揭秘!

    就带大家细数优秀电源工程具备的那些技能。新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科领域
    的头像 发表于 12-19 08:23 1715次阅读
    <b class='flag-5'>优秀</b>电源工程<b class='flag-5'>师</b>的必备技能大揭秘!

    一名高职生成为开源代码顶级贡献者

    3万行代码,和华为的5开发者起登上由开放原子开源基金会OpenHarmony社区官方发布的顶级贡献者榜单,在数千位代码贡献者中位列前10。这是鸿蒙操作系统开
    的头像 发表于 12-13 08:14 589次阅读
    当<b class='flag-5'>一名</b>高职生<b class='flag-5'>成为</b>开源代码顶级贡献者