双非本科拿到阿里腾讯字节,分享Java后端路线
前言
最近有很多小师妹来问我。
师妹:师兄~看了你之前的从腾讯到阿里,最后选择字节,觉得你特别厉害,请问你是怎么进BAT的呀,能不能告诉我你的学习路线呀~
既然小师妹都这么问了,那我在这篇就如实回答她。
正文
第一阶段看书籍
从书籍当中我们能更加系统的学习。我先推荐Java语言的书籍,如果你不是学Java的可以先跳过Java的书。
如果你是什么都不会的小白,先看《Java 核心技术卷 1+卷 2》
Java
深入理解Java虚拟机(第3版)(必看)
这本书主要讲的就是JVM,如果你是Java语言选手一定会问的。第2章 Java内存区域与内存溢出异常,第3章 垃圾收集器与内存分配策略,第8章 虚拟机字节码执行引擎 ,第7章 虚拟机类加载机制,第13章 线程安全与锁优化。这几章是面试常问的内容。当然啦,第一遍如果没有吃透很正常,可以二刷。
Java并发编程的艺术(必看)
这本是并发的入门书籍,Java并发编程实战我也看过,不过会比较难一点,所以还是推荐这本书。并发编程的艺术需要先看完Java虚拟机。
Java并发编程之美(选看)
这本书主要讲的是Java中并发集合的底层原理。看之前应该先理解简单Java集合的原理,如hashMap、arrayList、linkedList等原理再去看这本书。虽然本书的内容面试不常问,但作为加分项还是OK的。
加分项就是别人不知道,你知道的东西。
计算机网络
谢希仁的《计算机网络》(必看)(工具书)
这本书应该是很多高校的教材,跟着老师走就行,重点要掌握IP、TCP、UDP、HTTP。
图解HTTP(必看)
这本书的内容还是挺简单的,而且书中的内容HTTPS、Web的攻击技术面试也是经常问的。
TCP/IP详解 卷1:协议(选看)
HTTP权威指南(选看)
操作系统
操作系统精髓与设计原理(必看)
这是我的教材,个人感觉还是不错的适合入门。
深入理解计算机系统(选看)(工具书)
这本书太厚了,适合当工具书,哪里不会翻哪里。
UNIX环境高级编程(选看)
架构
大型网站技术架构(必看)
讲述大型互联网架构设计的核心原理,面试有很多问题可以在这本书找到。
师兄这么多书我看不完啊
每本书名后面我都有标必看还是选看。选看如果时间不允许可以不看,工具书的意思是看面经或者面试完复盘遇到不会的问题的时候,看相应的内容,毕竟网上的东西绝大部分都是二手或者三手以上的资料。
那如何看书呢?我经常都是看了前面忘了后面的
这是很正常的,不然为什么会有人二刷、甚至三刷的?我看书的时候会经常问自己,为什么有这东西?这东西解决了什么问题?如果没有这东西会怎么样?当我抛出这些问题后,把这些问题当做面试官问我的问题,我再根据之前看的内容对着书说出来。
举个例子
hashMap中的扰动函数解决了什么问题?
没有扰动处理会怎么样?
其他像hashTable是如何解决的?有没有什么可以代替的方案?
这样多问问自己,相信看完后,你会有更加深刻的理解。
第二阶段看别人总结的面试问题(面试前一两个月左右开始)
我们看完很多很多书后,这时我们还是不能应对面试的,因为我们根本不知道面试到底会问什么。
所以这时我们可以看看别人总结的面试问题及答案。这里先推荐几个。
这些会更加针对面试,基本都是面试的常见问题,在我们看完之前的书之后,我们再来看这些问题会感觉貌似会但是不会说,所以这阶段我们看看别人是怎么回答的。
我们看完每个问题及其回答后,闭上眼睛用自己的话回答(假装面试官就在你面前)。不要去背,如果理解了用自己的话说出来是完全没问题的。
第三阶段看相应公司的面经(面试前几天开始)
https://www.nowcoder.com/interview/center
可以去牛客(希望牛客能给我广告费)看别人写的面经。
前期就是看到一个问题自己回答一下,不会就去上网查资料、翻书,查资料最好别用百度,花点钱用Google吧,百度查到的都是CSDN。。。
查完资料自己一定要有一个整理的过程!!!
比如上面的Mysql主从一致,你看了一遍会了,下一次遇到又不会,你又去查,浪费时间而且查到跟之前还可能不一样,最坑爹的是,有时候我翻了很多资料才找到一个满意的答案,所以这整理不是浪费时间,是节省时间。
上面这图是我校招整理的问题,分享给大家,基本上面试的问题都能在这里找到,而且很多问题都有对应的博客详细解答。(别忘记点个star)
https://github.com/505928168/JavaInterview
建议下载Typoar来看
我看到一些好的文章我会记录他的网址,并且把精华的部分复制出来。下一次再遇到这问题我就直接看,省了很多时间去查。
师兄为什么你标题是说看相应的公司呢
因为不同公司的考察内容的不一样的,比如腾讯就喜欢问操作系统、计算机网络、数据库,阿里就喜欢中间件。
所以如果你想进腾讯,那就要先认真研究一下腾讯一般会问什么。
第四阶段面试复盘
经过前面的三个阶段,我们知道面试会问什么并且能够回答,那我们就可以去历练。建议每次面试都录音,复盘的时候自己哪块比较弱就去学习。
建议先找小公司试试手,因为在大厂你的每次面试都有记录的。疯狂投简历吧!冲!
第五阶段自我提升
假设这时候你面对基本的面试问题了如指掌,先别高兴太早,这时候我们应该学习更加有难度的东西,比如中间件、linux底层原理等等。
这阶段最好的方法还是看书。
Redis
这是面试经常问的,建议别再这阶段学,提前学习。
Redis设计与实现(入门)Redis 深度历险:核心原理与应用实践(进阶)
消息队列
我推荐学Kafka吧,个人感觉资料会多一点。
B站找尚硅谷的入门视频。知道它是什么东西,怎么用的,之后看Kafka权威指南。
zookeeper
B站找尚硅谷的入门视频。知道它是什么东西,怎么用的,之后看从Paxos到Zookeeper : 分布式一致性原理与实践。
其中如果觉得一致性算法难以理解这里推荐视频
https://www.bilibili.com/video/BV1TW411M7Fx
Dubbo
还是一样B站入门,之后看官网吧,因为我感觉很多书籍都是摘抄官网的。
http://dubbo.apache.org/zh-cn/
最后看完上面的选看书籍,恭喜你无敌了!!
师兄师兄,怎么没听你讲算法呀,我算法好菜的
那好小师妹,我最后讲下算法怎么准备,我们都知道算法是不能速成的,但是!!有很多套路!所以我这里非常推荐labuladong 的算法小抄,我就是靠着这小抄过了字节跳动的,剑指Offer我感觉也不错,值得看看。
我们看完算法小抄,并且跟着在力扣上面打。之后我们去力扣完成热题一百、面试精选等。如果觉得自己哪块比较薄弱,可以选择特地的分类刷题,比如动态规划。
注意,我们写算法题的时候就在力扣的IDE上面写,一开始很痛苦没有代码提示什么的,但是面试就是给你这样的环境,所以我们要提前熟悉!
项目呢?师兄?
项目确实是很多人的痛点。我们可以去抄袭别人的项目。就是写一个类似的,这个过程就算是抄,你也可以学到不少东西的,学编程不就是这样先看,再模仿、修改,然后创新吗?可以去GitHub上面找,有不少人是把自己面试的项目放在上面的,抄了再创新。
抄完项目后,想想这个项目的难点是什么,把这个难点包装,升华一下就是你面试要说的内容了。当然啦,项目的背景啊,实现了什么功能都要在面试前打好草稿。我这里不推荐任何项目,避免大家都一样就不好了。
避坑:建议别选秒杀或者商城,因为太多人选择了。这样的后果就是本来你做的东西挺不错,但是别人比你更好,那你就没有优势了。
如果自己没有做过项目,甚至连框架都没用过,可以去B站上面学习,像狂神说、尚硅谷还是不错的。
好啦,上面就是我校招的学习路线,适合收藏后慢慢看。
我是小炫,你们的点赞是我坚持下去的动力,我们下次见!
来关注一波~
双非本科拿到阿里腾讯字节,分享Java后端路线的更多相关文章
- 双非本科Android开发,如何逆袭拿到大厂 Offer?
从2020年3月18日投出第一份暑期实习简历至今,已经过去400多天.我也尘埃落定,即将去CVTE做Android开发. 休息了很长时间,如今已经能够很平静地回首这段历程,写下这篇文,致敬曾经走过的漫 ...
- 谁说双非本科就一定无缘阿里?H哥粉丝6面通过,喜提Offer!
本文来自作者投稿(原作者:小胖儿),原作者是一位2021届本科毕业生,就读于一所双非(非985.非211)院校,在今年2月份的时候,我曾经帮他指导过简历,并且根据他的简历内容帮他提了一些可能会问到的问 ...
- 非科班双非本科投的337家Java后台(励志)
考试结束,班级平均分只拿到了年级第二,班主任于是问道:大家都知道世界第一高峰珠穆朗玛峰,有人知道世界第二高峰是什么吗?正当班主任要继续发话,只听到角落默默想起来一个声音:”乔戈里峰” 前言 文章出自h ...
- 双非本科进大疆(SP)!
哈喽,大家好,我是仲一.今天和大家分享的是一位优秀双非本科生上岸大疆的经历(羡慕哭了...). 今年4月底的时候,这位学弟和我分享了他拿下oppo,京东,联发科实习offer的经历,当时我还发了朋友圈 ...
- 作为一名双非本科毕业的Java程序员,我该如何在日益严重的内卷化中避免被裁?
前言 对一个 Java 程序员而言,并发编程能否熟练掌握是判断他是不是优秀的重要标准之一.因为并发编程在 Java 语言中最为晦涩的知识点,它涉及内存.CPU.操作系统.编程语言等多方面的基础能力,更 ...
- 春招后端阿里腾讯字节美团Offer拿来吧你,面试经验分享
近期很多童鞋在准备校招了,找了蚂蚁的一位童鞋,给大家分享一波面试经验,以及面试心得,希望能帮大家在秋招拿到一个好结果 我自己的22届春招实习算是告一段落,给自己做个总结,也给大家分享一下面试的一些心得 ...
- 双非本科字节跳动Android面试题分享(已拿offer)
基本情况 本人系非985非211普通本科生一枚,有实习有项目经历但成绩普通,在面试前刷了很多面经.面试题,这里也把自己的分享下,做个回报好了,顺便攒攒人品,一到这种时候人就迷信起来了. 面试是以视频面 ...
- 双非本科字节跳动Android面试经验和心得体会分享(已拿offer)
新人报道,没有什么可分享的,就记录一些自己求职的体会和心得. 我是在校招补录的时候参加了今日头条的招聘,岗位是Android开发,最后成功拿到了入场券.但是这也丝毫不值得骄傲,大家都知道:技术日新月异 ...
- 双非硕士的辛酸求职回忆录:第 2 篇 谈谈我是如何同时找到Java、Python、Go等开发岗和国企银行的科技岗位Offer(上篇)
1. 双非硕士的辛酸求职之旅--谈谈我是如何同时找到Java.Python.Go等开发岗和国企银行的offer 1.1. 秋招最终情况 本人情况:双非硕,意向工作城市广深,Java和Python技术栈 ...
随机推荐
- Mybatis的几种传参方式,你了解吗?
持续原创输出,点击上方蓝字关注我 目录 前言 单个参数 多个参数 使用索引[不推荐] 使用@Param 使用Map POJO[推荐] List传参 数组传参 总结 前言 前几天恰好面试一个应届生,问了 ...
- 2.2 spring5源码 -- ioc加载的整体流程
之前我们知道了spring ioc的加载过程, 具体如下图. 下面我们就来对照下图, 看看ioc加载的源代码. 下面在用装修类比, 看看个个组件都是怎么工作的. 接下来是源码分析的整体结构图. 对照上 ...
- svn提交代码出错
今天提交代码的时候一直报错,下面是错误信息 Error: Commit failed (details follow): Error: Commit blocked by pre-commit ho ...
- tomcat源码--springboot整合tomcat源码分析
1.测试代码,一个简单的springboot web项目:地址:https://gitee.com/yangxioahui/demo_mybatis.git 一:tomcat的主要架构:1.如果我们下 ...
- [vscode直接运行js文件报错]: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
报错示例: 报错原因: 在vscode里面编写了一段js代码,使用了import来引入一个函数并调用 代码复现 // inherit() returns a newly created object ...
- training set, validation set, test set的区别
training set: 用来训练模型 validation set : 用来做model selection test set : 用来评估所选出来的model的实际性能 我们知道,在做模型训练之 ...
- 无所不能的Embedding 2. FastText词向量&文本分类
Fasttext是FaceBook开源的文本分类和词向量训练库.最初看其他教程看的我十分迷惑,咋的一会ngram是字符一会ngram又变成了单词,最后发现其实是两个模型,一个是文本分类模型[Ref2] ...
- Serial.begin
串口波特率的设置:通常我们使用Serial.begin(speed)来完成串口的初始化,这种方式,只能配置串口的波特率. 使用Serial.begin(speed, config)可以配置数据位.校验 ...
- ie 版本判断脚本
// 获取IE版本 /** * @return {string} */ function IEVersion() { // 取得浏览器的userAgent字符串 var userAgent = nav ...
- 多测师讲解 _接口自动化框架设计分层思想(001)_高级讲师肖sir
第一层: 第二层:调用接口层 VOQGWBZYNBOAVZGE