工作一到五年的Java程序员遇到瓶颈应该如何提升

如题所述

工作了5年的Java程序员,该如何提升,做了3~5年Java开发,你已经积累了不少项目经验,扩宽了技术广度,也许已发力成为团队管理者。到了这个阶段,大家却常有这种感受:感觉自己卡在瓶颈进步缓慢,技术水平很难像早期一样实现大幅突破?
其实大家往往忽略了这一点——提升自己的架构认知(工作5年左右程序员必须重视架构认知的提升,这会很大程度上推动你今后的成长)。架构的本质在于面对业务场景给出优雅的解决方案,使得业务能够快速迭代和持续交付,从而达到降本增效的目标。提升架构认知高度,就像达克效应所描述的一样,要敢于从愚昧之巅跳到绝望之谷,通过爬升开悟之坡,从而达到架构认知的巅峰时刻。到达巅峰时刻也就掌握了架构背后设计的哲学,面对具体业务场景在架构层面你便能够轻松应对,以无招胜有招。
提升架构认知,要紧抓3个关键点:业务洞察力、技术视野、原创力(执行力)。
1.业务洞察力是技术战略层面的问题,在当下能够做出合理的判断,清楚公司做什么事情收益最大;

2. 技术视野即技术选型能力,是技术战术层面的问题,在清楚做什么事情后,需要进一步解决怎么做的问题,也就是能够给出合理的技术选型方案:是完全基于开源的方案,还是基于开源二次开发的方案,还是完全自研的方案;
3. 原创力(执行力)是技术落地执行层面的问题,一旦技术设计方案确定后,需要能够快速Rush完成。
这3点层层递进,最重要的是先把技术战略问题思考清楚,然后再进一步解决技术战术问题,最后是快速落地执行的问题。
工作5年左右的程序员,在原创力(执行力)层面比较有竞争力,往往欠缺技术视野以及业务洞察力。后面2点更加重要,这2点解决的是架构设计哲学问题,是架构师能够持续拥有竞争力和影响力的立身之道。

举个场景的例子来详细说明:一提到分布式锁问题,大多数人想到的方案是基于Redis的Master-Slave模式来实现。这个实现方案行不行?分布式锁本质是一个CP需求,基于Redis的实现是一个AP需求,乍一看基于Redis的实现是无法满足的。脱离业务场景来谈架构都是耍流氓。
从技术战略的需求层面来看,如果分布式锁在极端情况下获取锁的不一致,社交业务场景能够接受,那么基于Redis的实现是完全可行的。如果业务是交易场景,分布式锁在极端情况下获取锁的不一致性无法接受,那么基于Redis的实现方案是不可行的。在锁强一致性的场景下,需要采取基于CP模型的etcd等方案来实现。
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-12-10

现在学习Java的平台有很多,B站或者是腾讯课堂都是可以的,我们在B站分享了很多经典的Java视频教程,都是开源的,你可以去看看。

第2个回答  2019-12-22
了解JAVA的原理,才有可能真正体会JAVA的一切。 想系统的学习Java,那么动力节点是个不错的选择,好像深圳有新校区
第3个回答  2019-12-21
Java中的异常处理主要用于捕获和处理错误,请你写一些try catch代码块去捕获错误吧。 动力节点深圳新校区Java实验班学习,有个人指导着总是好的。
第4个回答  2018-07-27

Hi,其实你不是遇到瓶颈,只是你不知道应该学什么罢了,或许你说的,也许是我经历过的,我说一下下面这种现象,如果你觉得我说对了,那么请按照我的方法去学习

现象1:工作中的内容得心应手,想学一些新东西,但是呢,这些新东西,工作中又用不到,这岂不是耽误自己宝贵的时间

现象2:想跳槽,面试的时候碰壁,因为面试问的东西,自己从来没用过,尤其是让你说原理的时候,更是完全不知道

如果你的内心存在上述两种现象,那么我曾经也遇见过,我提供一下我的建议吧,当然每个人的学习方式是不一样的,在此仅供你参考

    了解数据结构,其目的是为了阅读源码;这里推荐一本书,叫《JAVA数据结构和算法》Robert著的,有中文版,其中主要是数组,链表,HashMap的数据结构

    开始阅读JAVA集合框架源码,此时,你会深深感激你在1中做的事情

    阅读设计模式,其目的是为了阅读SpringMVC源码,这里推荐一本书,叫《headfirst设计模式》,你不需要全部读完,只需要认真读完前5章节,目的是为了更深的理解接口,抽象类,继承这些概念,当你读完之后,我保证你对接口,抽象类,继承,有颠覆的认知,绝对不是现在的你可以理解的

    阅读Spring MVC源代码,请注意,我说的是Spring MVC,而不是Spring,为什么呢,因为Spring核心概念依赖注入和AOP的代码,极度晦涩复杂,你根本无法理解其中有多么难,所以这里我建议你阅读spring mvc源代码,为什么是spring mvc,而不是mubatis,德鲁伊数据源,或者tomcat源代码??有必要跟你提及一下,spring的代码规范是java业界最为规范,java 文档最齐全的源码,各种设计模式层出不穷

    从上述1-4,没有一年是达不到的,到了这里,你可以学习一些其他的中间件了,这取决于你所在公司用了什么,比如你们公司用了rabbit MQ,那么你可以了解一下,你们用了kafka,你也可以学习一下,在这里,如果你们公司用了netty,我强烈推荐你要深入了解一下netty

    从5开始就是你个人和所在环境用的东西了,到了此时,我已经没有什么推荐给你的了,加油吧,1-4我保证你能学到很多东西,20K是没有什么问题了,然后就是架构层次的东西了,说这些还早,我也不想打字了,作为前辈只能说这么多了

本回答被网友采纳

工作一到五年的Java程序员遇到瓶颈应该如何提升
提升架构认知,要紧抓3个关键点:业务洞察力、技术视野、原创力(执行力)。1.业务洞察力是技术战略层面的问题,在当下能够做出合理的判断,清楚公司做什么事情收益最大;2. 技术视野即技术选型能力,是技术战术层面的问题,在清楚做什么事情后,需要进一步解决怎么做的问题,也就是能够给出合理的技术选型...

Java程序员在工作之余如何提升自己?
1.购买相关的技术书籍进行业务能力的提升和巩固,对个人的自控和自学能力有一定要求。2.去学习网站上看教学视频,现在的学习网站一般都会有学院和讲师的技术实时探讨,学习氛 围较好,有的资源可能支付一定的报酬 3.技术博客的查看和写作也是不错的选择,相对前面两个方向,技术博客相对自由,也不需要支...

如何学好JAVA并提高自己?
2、扩展学习方向 Java程序员可以发展的方向有很多,前端、后端、运维、算法等等,如果你感觉在这个行业已经遇到瓶颈的话,可以考虑一下换一个方向试试,虽然重新学习的成本较高,但你已经有Java基础,学起来相对会更容易一些。这个方面各种相关教程也有很多,同学们不需要担心找不到教程的问题。3、添加一些...

作为一名普通的程序员,需要怎么给自己找一条后路呢?
1.提升自己的技能水平:不断学习新的技术和工具,提高自己的技能水平,这样就能更容易地适应行业发展的变化,提高自己的竞争力。2.建立自己的个人品牌:通过参与开源项目、在技术社区中发表博客或文章、参加技术会议等方式,建立自己的个人品牌,让更多人知道你的技术实力和经验。3.多渠道拓展自己的人脉:参...

Java开发工程师职业发展如何突破?
一:常见模式与工具 学习Java技术体系,设计模式,流行的框架与组件 常见的设计模式,编码必备 Spring5,做应用必不可少的最新框架 MyBatis,玩数据库必不可少的组件 二:工程化与工具 工欲善其事必先利其器,不管是小白,还是资深开发,玩Java技术体系,选择好的工具,提升开发效率和团队协作效率,是...

java程序员如何提升自己?
关于java程序员如何提升自己,建议从下面几个角度提升:1、提高自己的逻辑思维能力。严谨的逻辑能力是高水平的程序员区别于低水平的程序员的一个原因。高水平的程序员可以在设计和逻辑上保证滴水不漏, 并用逻辑的准确性来减少代码 bug。2、坚持不断学习并严格要求自己。强化自身代码调试的能力以及勇于去...

java如何提升自己的技术?
那么,浙江java课程介绍一个java程序员该如何提高自己的java技术呢?1.工作之余多看书书籍永远是人类学习的好榜样,好的java书籍往往包含着java大神级人物的心血,你通过看他们编辑的书,你能够从中学习到java大神级人物是怎么思乎磨考的,从而提升你的逻辑思维提升你对java的理解能力,还可以看java大神级...

北大青鸟java培训:程序员如何突破技术瓶颈期?
2、企业的培训较为传统,多为被动接收,“营养成分”较低,对业务开发无明显提升。3、技术书籍和网上的免费资料实效性较低,且大多理论性会大于实用性,导致无法应用到工作场景。那么,该如何解决呢?1、借助“巨人的肩膀”,快速成长。学习资料非常关键,真正经典的素材只占1%。如果希望得到快速成长,或...

我工作一年多了,java程序员。我现在特别迷茫。不知道以后的发展...
1、你选择一直做开发,将来随着经验的积累和视野的拓宽,成为软件工程师,成为项目经理,你可能最终会成为一个系统架构师。百度的系统架构师年薪最低得好几百万,甚至上千万。2、你也可以选择做到一定程度了,慢慢转型做需求,做管理。将来你可能成为公司的领导。有人说远离技术才能赚到大钱。3、你也...

刚踏入职场的程序员,如何快速踏实地提升自己的能力
链接:http:\/\/pan.baidu.com\/s\/1p1G4NCUtPNVvkkXE7qxFbQ 提取码:ddi0 程序员进阶攻略。如何才能持续成长,是每一个程序员都绕不开的话题。入行之初,你可能会困惑于技能选择的方向和掌握的方法;编程前期,你可能会苦恼于Bug的调试与修复;技术水平达到瓶颈期,你可能又急于寻求突破和上升。除...

相似回答