一个十年Java架构师的成长之路分享

铺平你的架构师之路!十技术专家敬献Java架构完美设计笔记 写在前面 软件架构师是每个程序员职业生涯中内功心法修炼的终极目标。当然要达到这个目标,一般并不简单,你需要具备“十八般武艺”,而且还要融汇各家所长。那么,该如何更好的理解架构呢? 从形上看,架构是系统结构的骨架,支撑和连接各个部分;从神上看,架构是系统设计的灵魂,深刻体现了业务技术实现的本质。 从纵向架构上看,架构涉及由客户端发送请求到服务器处理,再从服务器返回给客户端的各个主要步骤的具体处理细节;从横向架构上看,架构又关联到实现这种客户端——服务器端的架构模式。 而如果要成为一名优秀的架构师,你必 阅读详情

在这里插入图片描述

前言

我搞JAVA也有些日子了, 因为我比较贪玩,上进心不那么强, 总是逼不得已为了高薪跳槽才去学习, 所以也没混成什么大牛, 但好在现在也已经成家立业, 小日子过的还算滋润, 起码顶得住一月近万元的吃喝拉撒玩各种贷款信用卡 不为金钱过于发愁了。

我特别感谢当初贴吧遇见的那位大神, 虽然每个月也就聊那么几句, 但是他总能在我不知道该学啥, 该怎么走的时候, 给我方向, 毫不夸张的说,我现在的衣食无忧, 技术马马虎虎, 都是拜他所赐。 所以 我也想分享一些自己的成长过程 以及技术路线 希望给到一些三到五年工作经验却对未来迷茫,踌躇不前的老哥们一些建议吧!

其实这行的工资待遇和前景,比起一些风吹日晒的苦逼行业 还是要好不少的, 很多人说程序员累, 加班 , 掉头发 但其实在生存压力面前 这都不算什么, 有哪一行是轻松的呢?起码程序员技术到位了,工资还是比较可观的。

Java初级阶段

先 JAVA基础语法, 集合类, 线程, IO操作, 这些掌握了 基础算是过关了。IO操作有点麻烦, 被搞晕没关系 ,知道什么时候用 ,用到了 ,再去搜索就行。

其次 web部分 servlet jsp session cookie mysql数据库, 都要知道怎么操作怎么用 前端页面的话 html不必太深 能看懂就行 js或者jquery会操作dom能够把后台数据放到合适的位置就可以 现在前段js技术五花八门 基本很少有项目让后台弄前端了 如果有并且很长时间了 你可以考虑跳槽了……

学到这个阶段,你需要知道一个请求从页面或者移动端发起之后 经历什么样的过程再返回去的 知道ajax是什么 会发起异步请求到后台 。

框架方面 别学struts hibernate了 很少有项目用了 学springmvc spring mybatis就可以 ,不必清楚实现原理 会搭框架 搞一个增删改查出来就行了

到这里,大约就是初级阶段了 你可以去找工作了,期望别太高,如果有人要你 工资大约是5到6k 如果是成都西安这些二线 还要低点。之所以说如果有人要,那是因为这两年行情不太好……这些基本技术需求已经没法找到一个比较靠谱的工作了。

这个初级阶段,其实是最苦逼学的东西最多的阶段,你没有太多的时间,顶着没有收入还要吃喝拉撒的压力,也许还有你父母家人 朋友的不理解和嘲笑,在他们眼里,你念书那么多年出来,却连个靠谱的工作也没有,还在穷折腾,如果你不幸已经进了培训机构,两万多的学费加生活费,等你上班后你会知道攒钱两万是多么多么的困难……种种压力面前,你需要在四到五个月杀出一条血路证明自己的价值,怒怼所有嘲笑,将来工资傲世亲朋好友,让你的父母欣慰,让你能够挺起胸膛做人,铺垫好你后面二三十年的路,让你的父母老了能够老有所依。 如果你正好在培训机构学JAVA 看到我这些文字 希望你能坚持一下,拿出你的热血来 咬牙学它四个月,所有苦难的日子,在拿到高薪offer的那一刻都是值得的。

如果你看到以上 还是无动于衷,我只能说,别学了 该干嘛干嘛去吧……去享受青春吧 然后腐烂吧……啃老吧 … 不用我骂你废物了 自然有人骂……随着年龄的增长 你会知道你当初多么的愚蠢不堪,你甚至有可能会丧失做人最基本的繁殖权利,因为没有女人会愿意和你在一起…即便是现在有图你帅气外表的 也会离你而去……因为你连稳定的生活也没法提供。

这些话说的极端了点…天下行业多得是,但我就事论事,你已经进了培训机构,八成说明你真的是找不到什么出路了……真的……希望能够骂醒一些迷途少年吧。

扯远了,接下来继续说技术干货。

上面说 如果有人要你……这个可能要吓到很多新人了,我特么那么拼命的学出来,结果还是没人愿意要,怎么办??别担心 你只需要把下一阶段的技术,学一部分 伪装一下经验,就可以了。

Java中级阶段

初级阶段之后,你能够用tomcat和ssm框架弄一个简单的项目出来了, 这时候 你可以注意一下编码规范,变量命名用英文,状态变量用枚举 常量等 你这样做是最低成本的伪装经验,因为新人写的代码往往和狗啃的一样……不要在controller写逻辑 只接收检验数据 调用service和返回信息 不要把request传进service里 那样会破坏依赖分离的初衷,dao基本没啥说的 就是查数据 我见过无数新人写代码都是 service和dao就一个干巴巴的方法 逻辑全写在controller里……这种的不用看 都是菜鸟。

你会框架的CRUD之后 你可以看一下nginx 可以尝试做一个负载均衡玩一下,这个不需要你写代码 只需要配置下 但是能有效的提高简历质量,你还可以学习下MQ 就从activeMQ开始 尝试怎么用对接把任务异步出去, 你还可以试试redis 做个简单的数据缓存或者会话缓存,这时候你再去找工作就立马不一样了,学这三个可能也就用两三周不到,但是你的简历会体现出一个中级程序员的水平。

那说到中级技术水平 个人觉得应该掌握的技术有 负载均衡 apache http 或者nginx均可, 队列 ActiveMQ 就行(这个是java语言写的比较贴近java ),缓存 redis就行 memcache用的越来越少了感觉,还有精力的话,可以看一下mogoDB 做个简单的demo存个json进去玩一玩。 然后你的简历又丰富起来了………你工作里肯定用不到那么多,但是你就往你简历里写,糅合进你的项目里去,反正你知道什么场景用这些就行,问不出来的。 初级和中级界限很模糊的,只是一些中间件的使用而已。

如果你已经学到这个地步,那你要是再说找不到工作, 我是不信的 这时候你找工作 如果在北上广深 应该有机会破万了,至于具体拿多少,看你的表达忽悠能力了。

接下来就是比较高级的部分了,这个阶段 你大概又陷入苦学的阶段了………因为你不能只会用,你要知道原理,不至于让你自己实现一个出来,但是基本原理要知道。

Java高级阶段

接下来就是比较高级的部分了,这个阶段 你大概又陷入苦学的阶段了,因为你不能只会用,你要知道原理,不至于让你自己实现一个出来,但是基本原理要知道。

到了这个阶段,你要懂得

  • jvm基本结构
  • 要知道垃圾回收机制
  • 常用垃圾回收算法
  • jvm简单调优参数
  • 数据库也是个重头戏
  • 你要知道mysql事务隔离机制的实现
  • 怎么优化sql
  • 要知道springmvc流程 spring的原理 事务传播机制
  • mybatis流程原理
  • 乐观锁悲观锁什么情况用
  • 你要学会考虑系统瓶颈,系统容灾,单点故障
  • 你要懂得一致性是怎么回事
  • cap理论 paxos算法
  • zookeeper干嘛用的,能解决什么问题?
  • 你要懂得soa架构,dubbo , 微服务 spring boot spring cloud 这些高级框架 尝试用一用

谷歌,开源社区 将要取代百度成为你解决问题的主要动力和前进的方向, 你会有种一览众山小的感觉,你会觉得弄个百万并发的系统其实并不难,难的是后续问题,日志处理 运维问题, 关于运维我给不了太多建议,可以了解下 zabbix 之类的 可以去学习下 docker 微服务加docker将是未来的趋势。

学到这个地步,你大概已经不用担心工作问题,这种三五年经验的高级程序员需求永远很旺盛,注意 我说的是三五年学习实践经验,不是三五年一直crud经验。这个时候你如果在北上广,你的工资大概会接近20或者更多,成都西安这边大约15到20 你已经不用为钱太过于发愁了。但是请不要太安逸,因为上面说的那些也只是初窥门径而已

到了这个地步,工资已经比较难以提高了,但是大部分程序员是走不到这一步的。因为他们眼里只有薪资,对程序没有一定的热爱,是很难坚持到这一步的。之所以说三十岁是程序员的分水岭,就是因为很多人在艰难的学习实践路上或是倒下了或是满足了…或是踏足管理 产品 等等岗位 这也是一种出路 只不过我这里讨论的是技术,我个人危机感比较强,技术抓在手里,永远后顾无忧,脱离了技术,你八成会被绑定在某个岗位或者公司上……跳槽?别人未必要你,凭啥你过去就是管理岗位

Java进阶架构师阶段

又扯远了,到了这个阶段,你以为到头了?太年轻了……上面所说的高级阶段,只是构建一个比较大型比较稳定系统的必须而已,问题还是很多的,比如上面说的日志处理,如何利用庞大的日志产生商业价值?如今的淘宝 京东这种系统,你去买个鼠标 它就能给你推荐个键盘等周边外设, 那么它为啥不给你推荐个内衣内裤呢? 想明白这些,你需要进一步学习, 大数据要来了。

flume 日志处理 hadoop hive presto hdfs storm spark 大数据 流式计算,这些够你喝一壶的了,学到这个份上,也不需要别人指点你什么了,你能到达这个阶段本身已经证明了自己的学习和技术能力。到达这个阶段,你八成已经成为一个跨语言程序员了,因为处理数据,并不是java擅长的,你要非用java………那我只能说 人生苦短,何必折磨自己。 你应该已经学会了python scala 也可能有些R语言, 这时候你会发现,语言真的只是工具而已,学个语言很快的,来来回回就是那么些东西而已,思想最重要。

到了这个阶段 你会觉得技术不过如此,妈的学也学不到头,学来学去也都是跟着老外屁股后面用框架而已,恭喜你 你的无聊和孤独求败心态 将会成就你的下一个阶段

Java架构师阶段

如何成为这一阶段,那么我们还得回到上一阶段,Java进阶架构师阶段了,今天我在这里也是给大家分享一份我自己整理的Java架构师进阶的指南吧,这份指南对于我之前也是有很大的帮助,分享出来,也是希望能够帮助正在从事Java工作的你

Java架构师进阶学习指南

如果你是Java程序员,对于上诉所说的技术提升很感兴趣,加入楼主的java架构学习交流群:867923845点击立即加入就能免费获取笔者整理的适合1~5年的Java工程师学习参考的资源啦。还有大量面试题以及解析。欢迎各位工程师加入,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

Java面试题


【规则引擎连载3】 WebSphere ILOG JRules 开发——新建一个规则项目 规则项目依赖于bom,bom来自于一个Java项目,所以在建规则项目之前,需要先建立一个Java项目,也就是建模。 说明:原则上是一个规则项目,一个bom。如果规则项目很多,并且每个规则项目的bom都是一样的,那么可以将bom提取出来,单独作为一个项目,这样减少不必要的重复操作,减少维护成本,降低出错几率。这里逐步讲解两种方法来创建规则项目,推荐第二种。 本文主要建立两种规则项目与bom之间的关系,编写相关的规则内容,如操作规则、规则流、决策表等,在后续文章中详细讲解 。 阅读详情

相关推荐

【论文复现】——基于LM优化的NDT点云配准算法

传统的正态分布变换配准算法处理初始位姿变换相差较大的两帧点云时,存在无法收敛或者陷入局部最小值的问题。为了提高算法的收敛性能,提出了一种基于LM方法改进的三维正态分布变换配准算法。

点云侠的博客 1146

JAVA开发(JAVA架构师成长之路)

从一个最基础的JAVA开发人员成为JAVA架构师,需要经历8层能力的进阶。

JAVA领域优质创作者,基于分片网络查询方法专利发明者。 5457

java架构师成长之路

作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。

Java架构师之路一、Java基础知识:Java语言特性、集合框架、IO流、多线程、反射、注解等基础知识。

Java语言特性是Java编程中非常重要的一部分,包括自动内存管理、跨平台、异常处理、泛型、Lambda表达式等。下面对这些特性进行详细解释:自动内存管理:Java通过垃圾回收机制实现自动内存管理。程序员可以通过new关键字创建对象,不需要手动分配和释放内存,由垃圾回收机制自动回收无用的对象。这种自动内存管理机制可以减少内存泄漏和野指针等问题,提高程序的健壮性和安全性。跨平台:Java程序可以在不同的操作系统上运行,这得益于Java虚拟机(JVM)的存在。

shenzhiyoushen的博客 1235

Java架构师之路,4Java的心路历程

最点击领取2024完整开源项目《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》近公司项目准备开始重构,框架选定为 Spring Boot ,本篇主要记录了在 IDEA 中搭建 Spring Boot Maven 多模块项目的过程。这篇文章可以说是完全的一篇实战项目干货,感兴趣的朋友们可以继续看下去无论是哪家公司,都很重视Spring框架技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。

m0_61549674的博客 1008

java架构师_史上最全最详细的Java架构师成长路径图,程序员必备

从新手码农到高级架构师,要经过几步?要多努力,才能成为为人倚重的技术专家?本文将为你带来一张程序员发展路径图,但你需要知道的是,天下没有普适的道理,具体问题还需具体分析,实践才能出真知。架构师的“内功”我认为,架构师的内功主要包含三部分:判断力、执行力、创新力,简单解释如下:判断力: 能够准确判断系统的复杂度在哪里,就像武侠高手一样,能准确地看出对手的破绽和弱点。执行力: 能够使用合适的方案解决复...

weixin_39593427的博客 1634

史上最全最详细的Java架构师成长路径图,程序员必备

史上最全最详细的Java架构师成长路径图,程序员必备

zhaoshuangjian 9618

如何突破java程序员瓶颈?十Java架构师分享自己的辛酸成长历程

从新手码农到高级架构师,要经过几步?要多努力,才能成为为人倚重的技术专家?本文将为你带来一张程序员发展路径图,但你需要知道的是,天下没有普适的道理,具体问题还需具体分析,实践才能出真知。 架构师的“内功” 我认为,架构师的内功主要包含三部分:判断力、执行力、创新力,简单解释如下: 判断力:能够准确判断系统的复杂度在哪里,就像武侠高手一样,能准确地看出对手的破绽和弱点。 执行力:能够使用合适的方案解决复杂度问题,就像武侠高手一样,能选择合适的招式或者方法打败对手。 创新力:能够创造新的解决方案...

weixin_46577306的博客 5074

如何从Java工程师成长架构师

Java工程师成长架构师是一个逐步积累和提升的过程,需要经历多个阶段,并不断学习和掌握新的知识和技能。

2401_89079799的博客 1667

6时间成长为阿里Java架构师,该如何制定学习路线,规划未来?

前言 用了6的时间成为阿里架构师,一步一步走到了现在,中途也想过转换行业,也去了解过别人领域比较好的技术。也想过要转其他的语言,但是最后还是坚持下来走Java这条路,希望我的经历可以帮助到后来的人,要是觉得对你有是帮助的话,可以点赞关注一下。 当然也整理了今最新的知识点和面试题,需要的朋友可以点击:这个,点这个!!,暗号:csdn。 目录前言架构师应不应该写代码为什么别人的系统总是那么烂成为架构师最困难的门槛是什么?如何更高效的学习?快速成为架构师的学习路线 架构师应不应该写代码 合格的程序员对于明确

程序员Monkey的专栏 5890

架构师成长路线

程序员架构师的技术成长之路分为几个典型的阶段:工程师 - 高级工程师 - 技术专家 - 初级架构师 - 中级架构师 - 高级架构师 工程师 【阶段描述】 成为一个合格的工程师需要1 ~ 3时间,其典型特征是“在别人的指导下完成开发”,这里的“别人”主要是“高级工程师”或者“技术专家”,通常情况下,高级工程师或者技术专家负责需求分析和讨论、方案设计,工程师负责编码实现,高级工程师或者技术专家会...

coder 3103

JAVA架构之路(java后端常见框架)

Java中,分库分表框架主要用于解决单一数据库的性能瓶颈和数据量过大的问题。常用的分库分表框架有ShardingSphere、MyCAT等。 ShardingSphere(原名Sharding-JDBC)是一个开源的分布式数据库中间件解决方案,提供了一套完整的分库分表方案。它支持多种分片策略,如基于数据库、表和行等,并提供了一系列功能,如读写分离、分布式事务和数据库治理等。 MyCAT是一个开源的MySQL代理,支持MySQL协议和SQL语句,并提供了一套完整的分库分表方案。它支持多种分片策略,如基于

JAVA领域优质创作者,基于分片网络查询方法专利发明者。 3002

JAVA架构之路(JAVA常见算法)

java常见算法:顺序查找,二分查找,递归,冒泡排序,选择排序,插入排序。

JAVA领域优质创作者,基于分片网络查询方法专利发明者。 326

18 技术老兵谈架构师之路及 Java 程序员架构学习路线

现在正是金三银四的春招高潮,前阵子小编一直在搭建自己的网站,并整理了全套的**【一线互联网大厂Java核心面试题库+解析】:包括Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等**《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取![外链图片转存中…(img-VYOH6hZn-1713038103379)]

H1767410的博客 821

java的架构之路

对于java开发,只要入门,就可以做模块性开发了,这样做了几开发,发现只是开发速度快了、出错率低了、解决问题的能力提升了,但依旧处于“搬砖”的层级上,平时也看书,但发现看书只是似懂非懂状态,过不了多久就忘了。如果把做软件项目比作盖楼,盖一座大楼需要各种人,如何在身处做技工的你,一步步提升呢?两个字:尝试。 软件行业的尝试成本基本上是0。比如你的框架现在用的springMVC,你可以在业余时间尝试...

a1902890406的博客 618

Java架构师成长升级历程

前言 一转眼16毕业到现在已经工作了接近6的时间了,我是毕业通信工程专业,大学期间并没有学习过Java,主要以C语言为主。大三下学期,从网上找了些资源开始学习Android,从自学到第一份实习Android开发,后面被莫名奇妙的调到JavaWeb开发。从此便开始JavaWeb的开发。从一个只会Curd的码农,也逐渐的在工作中学习成长了许多。今初跳槽,从去9月开始准备,一直想去一线大厂,可惜能力不够,也未能成功进入大厂,后来面试到了一家金融公司。也莫名其妙被安排到现在的岗位:Java架构师,说实话

weixin_44399827的博客 1080

Java架构之路-架构应全面了解的技术栈和工作域

有时候我在想这么简单简单的东西,怎么那么难以贯通。比如作为一个架构师可能涉及的不单单是技术架构,还包含了项目管理,一套完整的技术架构也就那么几个技术栈,只要花点心思,不断的往里面憨实,总会学的会,又不是造航母,虽然博主曾经开发过航母网络系统。但是架构这个东西最重要的还是实践。而且不是一种架构能满足所有的业务需求,不同的场景可能需要调整。但总体来说组建一个技术架构委员会也差不多是这些东西,发布一套工作流程和方法论,规范、组织技术委员会,工作过程域等。

JAVA领域优质创作者,基于分片网络查询方法专利发明者。 3122

如何从Java开发进阶为架构师?5大核心能力+完整成长路径

成为架构师没有捷径,需要持续的技术深耕与项目锤炼。建议制定3成长计划,每季度攻克一个技术难点。记住:优秀的架构都是迭代出来的,保持学习才能应对技术变革。

TGQlovemm的博客 2013

码农辛酸史!历时五进阶Java架构师之路,回顾一路来的历程!

Java的弟兄们肯定都想要达到更高的境界,用更少的代码解决更多的问题,用更清晰的结构为可能的传承和维护做准备。想想当初自己摸着石头过河,也看过不少人介绍的学习路线,十多走过来多少还是有些收获。现通过自身经历总结一篇文章,供弟兄们参考。

javaAnPou的博客 355

一战到底!终于有阿里大牛把对标阿里P7的Java学习路线与架构进阶宝典整理成册全网开源了!

程序员进阶 关于普通程序员的进阶之路,网上的学习路线与理论说辞一抓一大把。在小编看来优秀工程师的成长之路就是一条不断打怪升级之路,Java入行容易精通难,需要能力也需要运气。 相信很多的Java程序员在自己的进阶之路上都有遇到以下几个方面的问题却不知道如何解决,也没有一个好的学习路线与规划: 具备有1以上Java开发经验缺乏Java整体认知 梦想进入BATJ等名企跳逋屡屡碰壁,急需短时间 有意深耕Java技术需要快速提升竞争力 想要建立完善的知识体系渴望掌握大厂核心技术 精进,跳槽拿高薪立志

Java圈全能架构师的博客 523

instantclient-basic-windows.x64-21.3.0.0.0.zip

navicat连接oracle时候用到的oci.dll配置,需要的朋友可以下载。

上一篇: 一个老程序员的忠告:千万不要一辈子靠技术生存
下一篇: 锅都不敢背,凭什么让大家跟着你干?
我是小泽呀!
博客等级 码龄7年 120粉丝 67原创
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值