历经一年学弟从家里到了阿里,只要有梦想总会实现的!,半路出家Java程序员看我轻松逆袭

现在回想起来,倒也不能说是辛苦,做一件事情是否困难很大程度取决于你对成功的渴求有多强烈,走到今天这步,应该算是六分努力四分运气吧,有了不错的起点,未来的路还漫长。

这一年从南昌到佛山再到北京,经历了美的和滴滴,接下来的几年可能要在杭州度过了,期待。

故事讲完了,上干货!

需要Java学习资料、面试真题的可【点击此处】获取!

干货分享

====

资源

==

求职必备 App / 小程序 / 网站

===================

以下资源全都是我自己用过的,强力推荐!

  • 牛客网必须排第一,收集信息,查找面经必备,也能在上面报团取暖,没事吹水缓解压力哈哈。

  • Boss 直聘,很多是直接为自己团队招人的,一般更缺人,比起官网投递成功率 upup、其他的智联、拉钩、实习僧之类个人感觉用处不大,基本没回音。

  • 脉脉,搜集公司、部门信息首选,也能在上面找到公司 hr 帮忙内推,闲来无事吃吃瓜也是极好的。

  • 小程序 offershow,应届薪资哪家强,中国山东…… 啊呸,还不快查 offershow!

  • 网站 Leetcode、Codetop,面试字节,算法方面有它就够了。

  • 简历推荐网站 超级简历 ,模板美观大方,还免费!

  • 技术学习网站推荐两个:掘金,上面有很多小册子,其实就是电子书,质量高的不少;极客时间,很多课程,比较系统,就是有点偏贵,不过为了进大厂这点投资还是划算得对不对~ 这两个网站的风格很清爽舒适,让我很是喜欢,学习也要颜控对不对~

  • B站,课程很多。

补充一个,编程导航(www.code-nav.cn),可以在上面找到很多优质编程学习资源~

学习书籍

====

其实看书这玩意大家都知道,买书如山倒,看书如抽丝,我自己本身只爱看小说 / 名人传记之类的杂书,对于专业书籍一向是耐不住性子去啃的,这里只推荐我自己看过的一些比较通俗易读的书。

  • 《从根儿上理解mysql》

  • 《深入理解 JAVA 虚拟机》javaguide上的jvm知识用于搭建体系,这本书深入细节

  • 《码农翻身》对于初学者来说很有帮助,以拟人化的视角了解多线程等知识,趣味性很强,读来不吃力

  • 《图解计算机网络》

  • 《剑指offer》、《啊哈算法》简单易懂,适合入门

学习方式

====

我主要推崇通过两种方式学习,但归根结底是一种思想。

先提一个观点,表达和写代码一样,是程序员的核心素养

表达能力不行,首先你面试通不过,就算技术能力过硬,那也是茶壶倒饺子,人家不能发现。其次就算你成功入职了,怎么和测试、产品对方案,你的思想别人没办法正确领会和接受。向老板工作汇报,怎么体现你的战功和武功?述职晋升的时候,怎么在短短半小时里打动评委?

所以,表达能力作为程序员软技能里的 Top one,它 hin 重要!!!

你是不是有点困惑,哎这部分不是讲学习方法的嘛,怎么又扯到表达上了?

哎别急,我要说的学习方法,就是 通过表达来进行学习 ,在学习的同时,又锻炼了自己的表达能力,一举两得,岂不妙哉~

求职技巧

====

项目

==

我最初的项目是一个单体博客项目,但一个 简单的单体博客项目 是绝对满足不了面试官的期望的,尤其是在后端开发岗竞争尤为激烈的情况下,分布式、微服务 几乎是必备的技能,如果项目上没有体现出来,那么面试官必定会对这方面的知识点加以盘问。所以面一家挂一家。而 RPC 项目作为一个代码量本身不大的项目,更适合求职。

以下几点说明:

  • 使用到了网络编程框架、协调服务 Zookeeper、序列化框架 fastJson 等。

  • 在基础知识上,运用到了动态代理、反射、这些高阶一点的 Java 特性。

  • 可以聊聊性能相关的 qps,通过负载均衡的方式减轻单机压力等等,这方面可以聊得就多了,消息队列、Nginx 等,不过项目本身没有用到。

项目指路:github.com/he2121/MyRP…

项目一定要自己 一行一行手打 出来,不要偷懒,有不会的地方就去学习了解对应的内容。大概两周时间就够了,接下来要做的,就是整理一套自己对于项目理解的话术,并且不断通过面试官的反馈去调整自己的表达方式。一般面试开始的时候,自我介绍结束之后就是介绍项目环节,这段时间要着重展示自己的技术栈和亮点,为之后面试官的提问做好铺垫。项目的最大意义,是让面试官找到提问你的点,也就是所谓的 抓手

自我介绍

====

建议分点,模板可以是 “总分总” 的形式,把自己的个人介绍分成校园生活、实习经历、个人技术栈等板块,分点介绍,这样不容易把面试官绕晕,能够很清晰地 get 到你的点。而每个大板块里又可以分几个小点,比如在实习期间做了哪些需求,在校期间的比赛、奖项等。一定要 条理分明 ,否则你这边吹得天花乱坠,面试官听得云里雾里,效果不会好的。

对于很多同学来说,包括我自己之前也是,没有实习,在校经历又乏善可陈,就容易感到困惑,我到底该介绍点什么好?

我觉得可以着重介绍自己最近在看的技术书籍、分享自己的收获,也不失为一种不错的方式,这样做的目的:

  1. 填充自我介绍时间,不会太过短暂

  2. 引导面试官之后的提问,很可能就着重围绕你擅长的这方面

  3. 个人印象分 up,容易给面试官一种善于自我驱动的感觉

你看,就像这样,分点陈述,是不是 so easy,妈妈再也不用担心我的自我介绍了~

至于你到底看了什么书,就看个人兴趣了,我自己是在极客时间上买了一本《从根儿上理解 MySQL》。这本书个人认为是极好的,虽然到现在也没有全部看完,但是数据库的实现原理方面已经足够面试吹水用了,通过它我对于一些面经的理解更加深刻了,比如说,mysql怎么实现的 MVCC(多版本并发控制)、为什么被删掉的数据依然存储在硬盘中,怎么个存法、事务是怎么实现的等等,这些书中都有答案。而且一些细节问题我相信很多面试官也是不了解的,毕竟工作中用得不多,那么这就是你展示你的技术深度的时刻了,比起只会硬背面经的竞争者,是不是立马亮眼了起来?

自我介绍几乎是每轮面试开头都有的环节,至关重要,建议事先准备好一段话,多口述练习几遍。

面试技巧

====

这一整年下来,从最初面试字节时说话都有些颤抖,到后来睡梦中迷迷糊糊接起电话就能聊(吹)个十分钟不带喘气的,我大概经历了技术面试 四十多场 ,分享一些小技巧。

其实面试的时候,碰到不了解的问题很正常,每个人都有自己的知识边界,面试官也未必全知全能。

对面试官来说,问问题的目的不仅仅是询问你对单个知识点的理解,更是对你整个知识体系的全面考察,如果你这里不了解,但其他地方有深度,可以把面试官往那边引导。比如说面试官问到 IOC,你说 IOC 不是很了解,但可以讲讲 Spring 的另一块基石 AOP 巴拉巴拉(当然 IOC 不知道你已经没了,太过基础,这里只是简单举个例子)。

总之,尽量避免长时间的停顿,会让气氛变得比较尴尬,进而影响接下来的发挥。

其他方面就不多介绍了,对前期的求职者来说,每次面试机会都弥足珍贵,最好录音一下,面试完以后去 复盘 ,从各个角度给自己挑刺,包括回答的语气是否有点尖刻、知识点是否回答完善等等。没把握的时候多找小厂练手,能力提升后再去面大厂,避免留下糟糕的面评。我今年投递快手无法通过简历筛选也许就是因为去年状态太差留下了糟糕的面评导致。

有一些面试百分百会问到的问题必须准备:

  • 介绍下项目 / 实习中的亮点或者难点

  • 项目 / 实习中收获最大的是什么

  • 项目 / 实习中结合了哪些知识点

  • 反问环节:我一般必问的问题是面试官对自己的评价或者是建议。面试不是自娱自乐,你的表演效果如何,需要得到观众的评价。

面试的过程也是不断打磨自己面试技巧的手段,务必珍惜每个面试机会。比如我自己在今年春招的时候,由于有了实习经历,每次面试面试必问的一个问题就是让我介绍一下实习过程的项目。其实坦白说实习过程做的事情也没有多大难度,最开始我选择了一个业务场景相对复杂的需求,为了把这个需求讲透彻,自己整理了一大段关于背景的描述,一开始现场面试的时候感觉还好,配合当面纸笔画图描述,往往花费一定时间还能让面试官大致理解到我的点。后来视频面试甚至电话面试就发现,讲这个需求的 ROI(收益比)实在太低了,花费了大量时间,从面试官那里没有得到很强的正向反馈。所以后来我换了一件工作去介绍,效果就好了一些。

面试过程中的每一分钟都要把握住,尽量少说重复的、不能体现自己亮点的话;在回答面试官问题时,也要想清楚再说,不要自己乱说一通,到头来发现是错的。

算法

==

其实现在我觉得算法只是一道门槛,对智力正常的 IT 从业者来说,只要花时间去练习,是肯定能达到要求的,一般公司即使是大厂也不会在这方面太过刁难。如果一上来就出一道 Hard(不常见的那种,超高频的接雨水、LRU、K 个链表等不在此列),只能说明这个面试官不讲武德,你和这个岗位还少点缘分,那挂掉倒也无妨,毕竟大厂还有很多。我自己是大概刷了 300 题不到,到达这个题量之后可能会发现,之前的题目基本上又忘光了,很好,可以来 第二遍 了。第二遍就会轻松很多,简单回忆一下,重点题一定要多练。

最开始写算法的时候我发现自己快排怎么都记不下来,学了忘忘了学。后来有一周我给自己规定每天早上醒来就写一遍,一周后写着它已经不过脑子了,拿着键盘就是敲,形成了肌肉记忆。通过刻意练习,巩固所学,在理解的基础上去记忆。 还记得 OPPO 二面的时候我当场表演了手撕堆排、在滴滴表演手撕 LRU,这种比较长的算法写出来是很加分的。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

总结

互联网大厂比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

在这里插入图片描述
的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

[外链图片转存中…(img-vPNxbzhK-1711828586232)]

  • 11
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值