入职 15 天,就想跑路了?
作者:沉默王二
Java 程序员进阶之路:https://tobebetterjavaer.com
大家好,我是二哥呀。
不知道大家有没有遇到类似的情况,没 offer 之前,慌的一笔,感觉自己废人一个;好不容易入职了,发现公司环境和自己预期的出入很大,每天就是 CRUD,甚至 CRUD 都算不上,完全就是打杂,比如说给 leader 整理一下 Excel,天天就是一些鸡毛蒜皮的任务,技术上没有任何提升,想跳槽想跑路。
这个问题其实非常普遍,不管是大厂,还是中小厂,公司/部门制度的问题也好,遇到的 leader 不负责任也好。那刚好二哥的编程星球就有一个球友提了这么一个问题,借这个机会把二哥的经验心得分享出来,希望能给公众号的读者朋友们一些启发和帮助🤔。
读者提问
二哥你好,我是应届生三本Java,目前在上海一家公司上班,入职半个月了,薪资转正后应该是10k,但是入职这几天感觉学不到什么东西,就是对着业务crud。
我想跳槽,希望能有15k以上,请问我该学什么?
我知道要学多线程、JUC、JVM、Redis、消息中间件、MySQL、SQL调优、Spring Cloud、计算机基础等等,但就是不知道学多深。
例如我尝试去看线程池源码,但是我实在看不下去,看了一会就想睡觉,还有 SSM 也要学到源码级别吗?
我的诉求就是去一个更好的公司(但不是大厂,我也认为自己没有那个毅力)
二哥回复
球友好,大多数普通人新入职时都会遇到这个问题,我也遇到过。
所以我就结合我的亲身体会来谈一谈。
我的第一份工作,是一家外企,10 多年前了。当时用到的技术叫 flex(已经淘汰)。
我刚入职那会也是做一些边缘化的工作,因为刚去嘛,没什么经验,也不会和领导打交道,所以一直打杂。
机缘巧合,听某个前辈说,我们开发一部接下来的重心是 flex 的项目,于是我就开始强迫自己去看 flex 的源码,以及前辈封装好的 flex 组件库(苦苦哀求前辈要了源码权限),一开始看的过程非常痛苦,因为很多代码我真看不懂。
但我心里莫名地笃定,这是我的一个机会。如果我能比团队的其他成员,比我一起进来的成员,更早一点的接触 flex 源码,也许我就很快能超过他们。现在回想起来,站在上帝视角,确实属于提前预判了,因为我之前压根就没有参与到任何正式的项目,包括实习的一年,和试用期的仨月。
很快,经过半年时间的默默无闻,我在 flex 这个领域算是有点小成绩了,我给前辈们做了一个内部的聊天软件,供他们聊魔兽用。因为公司内部不允许用 QQ、飞秋这类通讯软件的(那会还没有微信和企业微信,用的一款通讯软件叫 spark,见下图),并且服务器会保留聊天记录,要是被公司高层发现这群前辈在聊魔兽,那就不得了了。
所以我这个主动去钻源码并写出来聊天工具的举动,很快就被前辈们认可了。
于是我很快就被调到一个项目组去解决有关 flex 的问题了(算是考察),解决的还不错,因为没有新人比我更了解 flex 组件的源码,我可以自定义组件了,其他新人还停留在会用的基础上。
解决完这个项目组的问题之后,我们部门里一个新的flex项目要启动了,非常重要,毫无疑问,我就被选做了 team leader,作为技术攻坚者。
工资待遇提升了,团队的地位提高了,参与的工作内容质量也提升了。
这就是去读源码的好处。
当你需要超过其他人的时候,就得做点不一样的。啃源码就是一个不错的办法,你要说这个过程痛苦不痛苦,那肯定痛苦。
学多线程 学 JUC 学 JVM 学 Redis 学 MySQL 调优 学 SpringCloud
这个过程注定是痛苦的,因为这些都是 Java 技术栈当中比较难的一部分,有一些我自己也学不会,每次去看也头大,因为学习能力是有差别的,不是每个人都是学霸,不是每个人都有很好的学习方法。
怎么办?
你可以去挑一家 15k 薪资的职位要求,看看人家要求什么,你就去学什么,面向跳槽学习,这样就能主主重点,因为 Java 后端的知识体系实在是太庞大了。
我去某招聘网站帮你看了一下,比如说这家,1-3 年工作经验,13-25k 薪资,一年 13 薪。
来看一下职位要求:
计算机专业优先,有项目开发经验 精通 Java、熟练使用网络、IO、多线程、JDBC,熟悉 JVM 原理 熟悉 SpringMVC、Spring、Spring Boot、Spring Cloud、MyBatis,熟悉分布式、缓存、消息通信 熟练使用 Maven、Git 熟悉 MySQL,有 SQL 优化能力
基本上没有逃开二哥一直给大家讲的 Java 后端开发四大件:Java 基础(SE)、Spring Boot、MySQL、Redis。
你去学这些重点就行了,也不一定非要都达到源码的程度,但比如说 Java 的常用类,String 类、HashMap 类的源码要看吧?
但 Spring Boot 的源码就不一定非要去看,熟练使用就可以了。
面试当中也不是所有的问题都能答上来才能过了面试官这一关,而是针对某一个技术点,你的答复能真正打动面试官,让他觉得你确实很厉害。
那比如说 Java 并发编程中,把 并发编程的原子性、可见性、有序性,以及内存模型 JMM 拿下,把 volatile、synchronized 关键字拿下,把这个领域当中的某些必须拿下的部分拿下,那面试当中就赢了。
挑重点,日积月累。
学会一个知识点,就是真的学会了,如果忘了,就重新温故,不要追求大包大揽。
即便是下一次面试中某一个点答不上来,可以用你真正掌握的去弥补,也是 OK 的。
所以,总结一下。
源码层面,要看你自己的诉求是什么,如果你简历上说自己掌握某一部分内容,OK,那你还是要去学的,硬着头皮学,学不会理解不了,先背会,去刷星球置顶帖里的面渣逆袭部分。
另外,及时调整自己的学习方法,让自己更高效一点。
比如说,做出来点什么东西,比如说看看编程喵的源码,结合星球的专栏《编程喵实战项目笔记》去看,通过 debug 调试的方式去看源码,效率会高很多。
比如说在学习 HashMap 的时候,为什么要扩容,为什么加载因子是 0.75,这样肯定只看源码是不行的,可以结合《Java 程序员进阶之路》网站上的内容看,加上自己调试,加上总结,你就不会那么枯燥了。
还有就是,遇到问题第一时间可以和二哥交流,或者在星球的 VIP 群里和大家讨论,交流。
最后,15k 没问题的,我之前一个读者,去银行外包都拿到了 18k 的薪资,还是非科班转行学习 Java。
你已经拿到 10k 了,那么只需要在这个基础上提升 5k 的含金量就 OK 了,对吧?
加油!
ending
一个人可以走得很快,但一群人才能走得更远。当你处在一个学习氛围浓烈的环境中时,就会不由自主地往前冲刺。二哥的编程星球已经有 990 多名 球友加入了,如果你也需要一个良好的学习氛围,戳链接加入我们吧。
尤其是一些缺乏自律&自主学习能力的小伙伴,二哥会变身贴心的班主任指导你制定学习计划,并且监督你每日学习打卡,来这里感受一段时间后,你就会自觉自发地放弃摆烂,开始努力和改变。
星球置顶帖里的知识图谱里已经沉淀了非常多优质的内容,相信大家可以根据自己的情况找到对应的提问&回答,你甚至可以找到情况差不多的球友进行交流。
上周末,又重新整理了一下二哥编程星球里回答过球友提问的帖子,我大致分了一下类,大家可以看一看,相信能帮助你走的更快、更稳、更远。
没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。
比亚迪,秋招的神 今年这情况,拿到这俩offer不错了 愤怒,竟然还有学校在教JSP 曝光秋招毁约公司 垃圾外包,离职也罢 非科班转码 推荐 10 个神级 Intellij IDEA 插件 美团率先开奖 24k,不甘心? Fleet,Java 轻量级 IDE 的未来? 先不管那么多,offer 接了再说
欢迎点击左下角阅读原文了解二哥的编程星球详情,这可能是你学习求职路上最有含金量的一次点击。