应届生,一口气拿下微软、Hulu、Amazon、腾讯、百度,蚂蚁金服、拼多多、字节跳动社招面经

第二面是另一个组的,算是交叉面吧,这一面就没啥特色了,非常标准的国内互联网式面试,先问简历,再问项目,再问基础知识,因为太没特色时间也过去很久了所以问题都忘得差不多啦,大概是以语言和网络为主吧。

宜信大数据(大数据研发岗,offer)

宜信也是找学长内推的,9月中旬面的,算是提前批吧,先是两轮onsite技术面,隔了一周再一轮大佬面。之前听说宜信面试很难,所以还是做了比较充分的准备。

第一轮的小哥并没有问出是哪个组的,做的东西好像跟前端有点关系,抓着我的简历一顿怼,什么都问,从实习经历,到项目,到点各种语言特性,到操作系统,到对各种前端开源框架的看法,而且问得都很细,细到差不多快把一个框架实现一遍了,感觉有点厉害,不过有个人愿意听我一顿巴拉巴拉聊技术还是挺爽的,我以异常快的语速说了大概50分钟,两人都挺满意的,他看时间不够,就随意让我口述了个杨氏矩阵找数的水题,结束了第一轮面试。

第二轮开始之前有个插曲,二面的面试官跟一面的面试官直接在门外讨论我的一面,可能他们不知道那个屋子的隔音效果不好,他们说的啥我都听到了 ⊙ˍ⊙,不过基本都是正面评价,我还是挺高兴的,其中听到不需要再问我基础知识,可以着重考察下coding,终于到了喜闻乐见的coding环节。

第二轮的面试官竟然是个看起来更年轻的小哥,也是上来先一顿商业互吹,接下来果然没有再问其他,直接给了个题目,一个矩形区域和无数个半径相同的圆(当然这是抽象建模之后说法,原题是他先说了一大堆应用场景),让我想个方法用尽可能少的圆去覆盖整个矩形,圆可以重叠,初看不像编程题,像计算几何的数学题,我想了会也没找到很好的方法,就在纸上画,然后就给了个从一个角开始以某种规则往外铺的方法,他好像还挺满意,我问他这是不是最优的,他没告诉我,让我回去再想想,说我的回答已经可以了。接着重头戏来了,题目变了下,一个二维区域里有很多大小不一的圆,可能有重叠,然后有一组点的坐标,让我返回每个点被哪些圆包含了,需要代码实现。我第一反应是离线,就脱口而出莫队算法,他有点惊讶我知道这个,笑了下让我再想想,我仔细想了下确实跟范围查询并无关系,就开始挠头回忆有没有看过类似的题,静下心想终于想到之前做过矩形重叠算面积的题,虽然跟这个不一样,但总感觉这种二维平面图形重叠的题有类似的地方,于是想到了扫描线,他还是挺满意的,后面就是各种细节实现了,把各种case都讨论了一遍,这一面超时了,不过面试官还是比较满意的,后面提问环节得知这是位Final大佬,他说一开始根本没指望我写出来,我(╯°□°)╯︵┻━┻,最后跟他聊了些ACM圈子的梗(大多都是从其他大佬那听来的),第二轮面试就结束了,这一面大概是我迄今为止难度排前几的一轮面试了。

第三轮是一周后的主管面,这一面就没啥技术问题了,以哲学问题和聊人生为主,问我为啥要做那么多项目,以后想做啥(我也不知道啊大佬ㄟ(▔,▔)ㄏ),其中他竟然对我之前写的一个玩具编译器感兴趣(这也是迄今为止第一次遇到对这方面感兴趣的面试官),他说他之前研究过LLVM(终于找到知音了大佬T^T),我们就聊了好久的PL,从编译器前端聊到后端虚拟机,再聊到Haskell和Ocaml,我几乎把我学过的看过的听PL大佬说过的东西都吹了一波,他表示赞同,不过给出建议是这些东西没多少学生愿意学了,两人哈哈大笑,总之是体验很好的一次主管面。

美团(前端岗,offer)

美团应该是我唯一一家面前端岗的公司(所以这里可以好好说下前端面试经验),在牛客上看到有帮内推的就随手投了,然而他家的内推还是得参加笔试,然后是三轮技术面,一轮HR面。

这里说下,国内公司不像外企,前后端分的很开,写前端的一般只写前端,不像外企大部分是没有专门的前端岗的,一般都是前后端都写的site组(有些直接叫vertical,加上移动端),所以一开始报前端岗的时候还有点担心,不太清楚国内前端面试问啥,万一被问到CSS布局啥的我就跪了,也懒得为了应付面试去复习了,被问到就直接说不会算了,当然最理想的是问我js,react之类框架的原理,node,nginx之类的,问算法就根本不指望了。

笔试就是常规的选择题加两道编程题,没啥特色也没好玩的题,就没啥说的啦。

前两轮面试是去酒店面的,排队叫号,不过还好流程比较快,没有等太久。第一轮上来自我介绍后问了一个跟网站相关的项目,然后开始展开问些基础,不过幸好没问啥CSS之类的,问的都是其他面经里的常客题目,像打开一个网页经历的各个过程,HTTP头部,HTTP2.0之类的,期间我各种暗示可以问些跟js或react有关的问题,不过面试官并不鸟我,大概是他已经准备好了题目吧,按照他的题库问完了就结束了,都是他问我答,很机械,不到半个小时就结束了。

第二轮面试官明显就没那么死板了,跟我有了不少互动,跟我讨论了下实习做的东西,问了很多细节,他还提出了改进意见,然后让我用js写代码,先是用setTimeout手动实现setInterval,很简单,直接闭包加递归,然后是实现一个监听滚动条开始滚动和结束滚动的监听器,也不难,就是写个监听器来监听scrollListener而已,再加个定时器,这两题虽然不难,但我感觉还是挺考验基本功的。接下来又聊了会redux的设计哲学,我就顺便把redux简单实现了下,他还挺满意的,结束了面试。

第三轮是隔了一周去总部面的,人还是挺多的,不过流程很快,面试官基本没问啥技术问题,全程基本是我一个人在聊项目,最后我赶紧抓住机会问了很多他家用的技术栈,跟预料的差不多,然后就结束了。

紧接着就是HR面,都是很常见的国内公司“HR式问题”,这些问题也都有“标准的campus式回答”,没啥好说的。

网易有道(后台研发岗,offer)

有道投的时候好像内推提前批已经结束了,就走的正常校招流程,笔试+四轮onsite技术面试+HR面。

有道笔试的编程题比我预想的难一些,第一题常规树形dp(后来看了题解发现想多了,好像直接贪心就行),第二题简单数学题,第三题当时没全过(后来看了题解发现规律找错了)。

过了一周通知面试,之前一直听说有道的技术氛围极好,里面牛人很多,面试喜欢现场coding,所以还是挺放松的,至少不需要刻意去看面经了,很喜欢这种让我improvise的面试。面试是周六,当时以为有道周六还加班,去了发现并没有,只有HR和几个面试官。我第一面在上午,面试官是个比较年轻的小哥,挺热情的,先让我挑个项目介绍下算是暖场,然后开始怼题,先是一道简单概率题,再是一道最短路搜索,很常规,优化直接可以双向BFS或者A*,不过这不需要现场写,最后是一道最大子数组和的变种题,求最小子数组绝对值和,这题还是挺有意思的,想了会,先给了个O(nlogS)的解法,S是所有数的和,就是直接对解二分查找,他估计是没想过这个解法,就先让我实现给他看下,写完后又让我想下有没有O(nlogn)的解法,然后我才发现刚刚脑子短路了,直接先求前缀和再二分找最接近0的解就行,他还是比较满意的(因为我给了两个还不错的解法)。

面完第一面已经中午了,HR把我们带到网易食堂吃,可能是因为是周末,感觉食堂一般啊。下午第二面的面试官是第一面小哥的同事,也是先聊项目再做题,题目很一般,棋盘dp,然后他稍微变了下,给每个格子加上权重,我就转成了图求最短路了,然后手写了个SPFA,最后聊了下有道目前的业务和技术栈结束了第二面。

第三面是另一个组的主管,毕竟有道,主管面也是上来先做题,给一张图,求每个像素的均值,其实就是二维矩阵求每个数与周围8个数的均值,很简单的题,先求二维的前缀和就行,代码也很好写。他看我写得很快,还算满意,就没再问算法了,开始跟我聊分布式的一些基础架构,这个我不是特别擅长,只能懂啥说啥了,说了些开源的框架,也不知道算不算答得不错,然后介绍了下有道目前在做啥,并着重说了下有道非常自由的技术氛围,不是那种以产品需求为主导的开发,并且如果干得不爽可以随时换组,这点还是挺吸引我的,最后问我以后想做啥,我说不知道,比较尴尬 (⊙ˍ⊙)

第四面是加面的,面试官是一个负责多个部门业务的大佬,问得比较随意,基本没啥技术问题,以聊人生为主,主要是看你对一些问题的思考深度吧。HR面详细得问了我其他家offer的情况和一些期望,也问得挺随意的。

完美世界(后台研发岗,offer)

完美我投的不是游戏部门,是互联网部门的后台开发,走的提前批,三轮技术面试,一轮HR面。

第一面是个年龄比较大的面试官,应该是title比较高的吧,很严肃,抓着各种基础知识一顿问,以C++为主,幸好C++用得多,应对得还算好,然后问了一道很常见的数学题,用12的砖铺2n的地板有多少种铺法,简单组合数学题,我以为他接下来要变成m*n的地板,那就是比较难的状压dp的题了,不过我还是挺希望他问的,然而并没有,问了个整数划分的变种题,给了个搜索加剪枝的解法,他还算满意,其他还问了些Linux内核的东西,只回答上了两个,结束了第一面。

第二面是个比较年轻的面试官,是做iOS开发的,所以应该算是交叉面,问了很多关于APP开发相关的东西,我虽然好久不写iOS和Android了,不过幸好一些基础还记得,后面扯到Dalvik,他好像对这个很感兴趣,就说了很多虚拟机的东西,最后算是面得还不错吧。

第三面直接就是完美互联网部门的老大了,完美的副总,不过是个很平易近人的大佬,所以聊得还是挺开心的,给我介绍了很多业务相关的东西,跟他之前做的项目,我就负责喊666就行了,比较容易的一面哈。最后HR面也聊得挺开心的,这个HR算是我见过的比较厉害的了,没有问那些明显是HR新手才问的问题,聊得很接地气,给个赞。

腾讯TEG(后台基础架构岗,offer)

腾讯我投的很晚很晚,那时候笔试都结束了,所以没来得及参加笔试,不过还是通知我去面试了,一轮onsite,一轮电面,一轮HR面。

第一面是去酒店面的,面试官先自我介绍了下(直接拿着百度百科介绍的Orz),是TEG北京这边的一个高级架构师,很认真地给我介绍了TEG北京这边做的东西,以基础架构为主,我还是挺喜欢的,就跟她聊了下实习的时候写的一个跟这个有关的项目,她也听得很认真,并给了些意见,当时就感觉我走大运了遇到一个很nice的面试官。然后给了我一道题,字符排序,她直接说了她不喜欢出难题,主要看代码实现,我也不敢大意,就非常小心地写完了代码,用的计数排序,而且用上了一切可以想到的规范代码的写法,并考虑了所有case,她看完还是比较满意的,给了我她的微信结束了面试,面试官热情又认真,个人感觉这一面面得很舒服。

第二面是电话面试,就在国庆前一天,深圳那边TEG的boss打过来的,先是问了些个人选择问题,问我为啥要投TEG,为啥没投阿里(哈哈,好问题),几乎没问啥技术,我答得也算中规中矩吧,实在没啥可以自由发挥的空间。

HR面就更迅速了,聊了大概20多分钟,就是一些个人信息,研究方向,以后的职业发展,目前有哪些offer之类的。

滴滴(前端转后台岗,offer)

滴滴比较神奇,之前内推投的前端,九月初通知去面试,算是提前批吧,然后一面面试官看了下我的简历,说我做的大部分不是前端的项目,推荐我去面后台,然后就喊HR过来改了我的岗位,我一脸懵逼(OO)?,我还啥都没说呢大哥,更扯的是HR说当天安排不了了,让我回去等通知,我(OO)?,这一等就等到了九月底,厉害了。

国庆节前去面试了,从上午9点一直面到下午6点,大部分时间都是在等,一面都是各种基础知识,很杂,题都记不清了,二面聊项目,用了40分钟好好讲了下自己的一个项目,很爽,三面基本都是听面试官在说,详细介绍了部门的业务,个人觉得还ok。

网易游戏(游戏研发岗,offer)

我对网易游戏是有一些情怀的,本科的时候一直是我的dream company,我投的是互娱,笔试加两轮onsite面试。

网易游戏的笔试难度还是有的,两个半小时5道题,A了4道,前三道水题,第四道是个模拟题,个人对模拟题比较拿手,所以过得还算顺利,最后一道是个与或二叉树,貌似之前在哪见过,不过当时并没有写出来。

今年北京这边的onsite安排得很晚,一直到十月中旬才开始面试。过去开始面试之前先要现场用纸写一道题,我那一场是连通分量,由于题很简单而且时间充足,所以可以慢慢写,尽量考虑好各种case,并优化下代码风格。

第一面面试官会先看下刚刚那道题,如果写的没问题就开始正常面试了。第一面问了超级多C++的问题,除了基础的泛型,多态,STL实现之外,还涉及到一些很tricky的技巧,有些是他工作中遇到的,我觉得我答得还算可以,还跟他讨论了一些编译器前端的东西。然后就问了些操作系统和计算机网络的常规题,还是老一套。终于等到算法题,先是筛质数跟爬楼梯,写得比较快,然后是硬币找零有多少种找法,直接无限背包,然后不让重复,换成了dfs加顺序剪枝,结束了一面。

二面面试官应该是深圳那边的一个技术主管,我以为大佬面不会怎么问技术了,没想到这一轮全是在做题,一共五道题,整体难度还是挺大的,第一题是实现一个可以拿到最大值的滑动窗口,比较简单,维护一个单调递减的队列就行;第二题是个并查集的裸题,没啥意思;第三题是凸包,因为我不是图形学方向,所以我写了个向量叉积的伪代码大佬表示还ok;第四题是个数学题,等概率在一个圆里面分布点,我想了挺长时间的,最后想了个先随机角坐标再随机半径开根号,他满意的,让我证明等概率,数学渣表示我不会证啊T^T,只说下了用向量密度敷衍了事;最后一题还剩5分钟,是个系统设计题,是他们开发中遇到的,大并发实时排序并求每个人的排名,我说了个改进红黑树的方法,他好像不是很满意,时间不够就结束了。这一轮面试虽然题不是特别难,但是全程无废话,一题怼完再来一题,爽爆。

网易游戏的效率挺高的,周末面完周一直接让去现场领offer,过去发现北京这边的诸多知名大佬们相聚一堂,商业互吹,互相打听各家offer,充满着快乐的气氛( ̄. ̄)

百度(后台研发岗,offer)

百度没有走内推,笔试加三轮技术面。

笔试很水,面试跟网易游戏同一天,而且都是周六上午,所以果断先去面了网易游戏,下午去百度的时候见识到了什么是人山人海 (⊙ˍ⊙),领到编号是9,发现周围的都是500开外,这一上午面了500人?(⊙ˍ⊙),抱着重在参与的心态去食堂面试 ,第一面面试官很奇怪,我手写了两道水题后一直在自己电脑上疯狂打字,让我等等,中途看我没事干觉得有点尴尬就又出了两道水题,让我慢慢写,我写完他还没打完,我兴趣大跌,就乖乖在那等他敲完了字,结束了这一轮,第二轮很普通没啥说的,第三轮面试官除了问技术还问我怎么看待百度的负面新闻,好尴尬 (⊙ˍ⊙)

华为(云计算岗,offer)

玄学招聘,很多人吐槽,我面了两面,本来是当天最早那批,结果第二面等到了下午4点,中途还跑出去面了个搜狗,两轮都是以聊人生为主。

搜狗(搜索研发岗,offer)

没有内推,笔试+三轮技术面+一轮HR面。

第一轮没啥说的,四题AK,题都是面经里的常客。第二轮由于水题写得比较快,面试官问了个挺有意思的题,杨氏矩阵(行和列都是有序的矩阵)找数,最快可以O(m+n)这没啥说的,怎么设计test case能保证最坏复杂度的查找,我想了挺久,面试官提示考虑两个相邻对角线,我恍然大悟,然后拓展到三维杨氏矩阵怎么设计case,那就是考虑跟主对角线垂直的剖面了,挺好玩的哈。第三轮系统设计,面试官全程在忙自己的事,这种感觉很不好,所以我也敷衍了事。HR面聊了很多,互相交换了不少信息。

2.3 国内创业公司

依图(offer)

因为上一届学长拿到了依图的offer,给得挺吓人的,所以就想看看他家的难度,四轮技术面,应该是我面过的公司里难度最大的,感觉遇到了整个上交ACM队Orz。

第一面是给个加权二叉树的中序找最大加权后序,当时脑子短路说了个Catalan暴力,面试官笑笑让我不要紧张,幸好没短路太久,发现是个区间dp的题,然后就顺手写下了递推公式,面试官挺满意的,不过因为要找最大加权后序本身,所以还是得写成top-down+memo,写得还是挺快的,这一轮算是开始进入状态吧。

第二面直接就是大佬面,因为大佬有事要先离开,所以提前面我了,大佬是原阿里云总架构师林晨曦大大那一系的,在google总部呆了三年回来在阿里云呆了八年,在分布式工程领域的造诣真的让我叹为观止,非常厉害,跟我聊了好多好多,从技术聊到人生,还有很多阿里云的前程往事,就跟听故事一样,很过瘾,着实让我大开眼界,跟这样的大佬聊天真是一种享受。

第三面回归正常算法怼题,我还没从上一面大佬的精彩分享中回过神,就被问了个二维矩形面积并的题(似曾相识),因为之前重点练过线段树,所以写得比较轻松,面试官挺满意的,就说我们不聊算法题了,我以为要开始聊人生,然而小哥笑着问我19世纪怎么测光速,嗯(O_O)?,这是在考我历史?还是物理?不过感觉挺有意思的,就开始回忆初高中物理课本,然而回忆了半天发现以前学的早忘光啦(╯°□°)╯︵┻━┻,所以只能用我那点可怜的天文知识开脑洞,他听我瞎扯了半天越说越不靠谱,就说可以用齿轮测法,好像高中物理确实学过,然我让我估算了下各种距离和转速结束了这一面。

第四面继续怼题,手写hashtable链表实现,讲了下莫队算法原理,然后出了一道ip地址掩码匹配查询的题,典型前缀匹配,我用Trie写的,他让我优化到4次查询,就是按字节查,然后存最后不匹配的所有可能情况,这一面难度挺大的。

这家今年给的offer很高,不过在大家都涨的环境下没那么吓人了,据说现在加班没之前那么恐怖了。

Pony.ai(offer)

投pony一部分原因是对他家做的事很感兴趣,还有一部分当然是对楼教主的信仰啦,pony里面一半的工程师是Google出来的,而且有很多ACM大神,所以也是做了比较充分的准备去面试。

投了简历,找了个师兄内推让我的面试提前了一些,三轮onsite。第一轮是个姚班出来的大神面的,直接怼题,一个小时4道题现场写完编译并通过所有case,一气呵成,除了最后一道二分的题想了会其他的题都还算常规,不过非常考验基本功。第二轮也是做题,不过换成了纸上写,先是一个折现找最多交点的题,然后是个凸包求交集,最后是个最短路加证明,感觉这一面偏理论,不过题都挺有意思的。第三轮的面试官是北美office过来的,问了些项目之后开始随便聊聊,聊了很多关于个人职业发展的想法,问他为啥要从Google总部出来,以及对智能驾驶的看法,颇有收获。总之是一次体验非常好的面试。

一周之后收到offer,HR通知是最高档,还是挺满意的。

商汤(offer)

投的是开发岗,笔试加三轮onsite,虽然拿到了offer,但是面试体验比较差,问的问题也挺无聊的,跟面试官聊天给我的感觉就是水水的,总体比较失望吧。

深圳寒武纪(offer)

这家是做智能家居机器人的,没有面试,他家CEO来我们校出差,就找了个咖啡厅聊了很久,因为这个大佬不是做技术的,就以聊人生为主,收货挺多的,给我的印象就是不差钱。

一些感想和学习笔记

能走提前批就走提前批,能内推就内推,不然会有很多意想不到的麻烦;有个比你厉害的好朋友很重要,平时多交流技术和心路历程,会发现自己永远需要努力;任何事情都有运气成分,何况面试,但是依赖运气的人绝对走不远;面试是个双方互相考察的过程。

基础篇

JVM 篇

多线程 &并发篇

Spring 篇

MyBatis 篇

MySQL 篇

SpringBoot 篇 

SpringCloud 篇

Dubbo 篇

Nginx 篇

MQ 篇 数据结构与算法篇

Linux 篇

Zookeeper 篇

Redis 篇

分布式篇

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

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

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

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

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

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

最后

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

下面的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

在这里插入图片描述

最新整理电子书

在这里插入图片描述

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

下面的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

[外链图片转存中…(img-YO3zp705-1712989515844)]

最新整理电子书

[外链图片转存中…(img-xpSz6cLr-1712989515845)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-H3wX6dET-1712989515845)]

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值