两个月面试经历回顾:阿里,携程,小红书,美团,网易等等(重点讲讲一二面内容)
前言
还没有 offer 的同学不要气馁,该来的迟早会来。我从六月中旬有想法跳槽开始准备校招,一开始也是惨不忍睹,后来慢慢进入状态最近的面试基本都能走到终面,所以好好坚持,最后一定会有好结果的。
我投递的都是上海的开发岗位,接下来以时间线回顾一下参加过的面试。最开始参加的一些面试比如英语流利说、美团、猫眼、分布科技我只是简单总结一下,很多问题我自己也记不得了。
准备了一些我面试的时候做的一些面试题笔记有问题也有答案,由于篇幅有限,以下只展示小部分面试题,有需要完整版的朋友可以点击这里即可获取到文章中的文档,资料!
电面
个人介绍做过的一些项目,然后围绕做过的项目问了一些线程方面的问题
数据库了解吗,说一说 B+树
websocket 的工作机制知道吗
……
一面
介绍做过的项目,围绕项目问了一些项目实现中的问题详细的说一说 B+树
使用索引有哪些注意事项
数据库引擎 MYISAM 和 INNODB 的区别
最后一道算法题,一个数去掉 k 位使其最大/最小(贪心)
二面
二面都是一些设计题,在白板上手写思路,比如:
一个实时通讯软件怎么设计他的数据库表;
一个 n 层嵌套的 json 字符串怎么解析;
……
三面
这一轮是 CTO 面,主要做一些问答。流利说的 CTO 个人感觉非常有活力,你每提一个问题都会说,嗯!这是一个好问题,然后再自己的小本本上记一记。这一轮比较轻松。
HR 面
了解一些个人情况为什么想从现在公司跳槽
你会选择什么体量的公司;
“一面的面试官觉得你不错,二面的我还没来得及沟通,想先让你来实习,你什么时候能给做最终决定”
聊了聊预期薪资,这个会根据面试评级来订
总结
流利说面下来感觉是家很有亲和力的公司,给人感觉活力很足,公司妹子也很多 hhh。而且 HR 也很细心面试前会给你一瓶水(虽然是小细节,但面了这么多只有两家的 HR 会这么做)。另外今天流利说在美股也正式上市啦,也恭喜流利说。已拿意向书。
美团
生态金融部门,已挂
一面
面试官上来就怼你的简历写的不好没有把做过的项目突出给面试官呈现想看的东西(虚心接受了,面完美团后就对简历做了修改,重点突出了做过的项目在其中的指责)
这个面试官会根据你的项目提及一个点然后就让你自己展开了说,如果有说错的地方就会说,是这样吗?
主要问了:
线程池然后说到了无界队列,引出了内存溢出,再到 jvm 怎么回收垃圾,说到引用计数和根可达分析,jvm 怎么确定根元素
做过的项目中遇到过哪些困难
画一个用例图
面向对象语言有啥特点
最后给了道简单的算法题目,手写冒泡排序
二面
leader 面也是聊人生聊理想
现在工作的地方架构上你觉得有哪些做的好的地方
你们的业务流程是怎么样的
家住哪里
如果进了美团对加班要有心理准备
为什么想跳槽,然后面试官就有了一种你现在在这家公司是这样,来了美团情况也不会有所改观的想法根深蒂固在脑海中,接下来我也就无 FU 可说。
接下来也就简单聊了聊个人爱好之类比较家常的话题就让我滚蛋了。
总结
面试前一天 HR 电话通知正常会有三面,二面让我滚回家就已知凉凉了。不过这次面试让我更清晰地认识到了面试中暴露出来的不足,知识上又进行了查缺补漏,为后面的面试奠定了好的基础,还是感谢美团吧!
猫眼
猫眼只经过了一轮电面就没了下文,目测凉了,电面问的非常基础,权当刷经验查缺补漏了
电面
java 里有哪些集合类,详细说一说 HashSet
java 的 static 关键字
反射机制
线程池原理,怎么实现区分线程优先级的线程池
索引,使用时要注意什么
详细介绍数据库的事务隔离级别
分布科技
这个投递的是区块链开发岗,面试官是我现在公司跳槽出去的,所以一见如故 hhh?问的不是太难
现场面
自我介绍,介绍做过的一些项目
手写树的中序遍历的递归和非递归方法
一道简单的 sql,涉及 join
讲一讲建造者 Builder 模式
TCP 三次握手和四次挥手
TCP,UDP 协议的区别
一天后给了结果说面试通过然后补做了笔试,编程实现囚徒困境的问题。又过了几天人力总监电话面试,沟通了下具体情况,是否看好区块链,想做什么方向,能否先来实习之类的。。
总结
唯二的第二家在面试时 HR 会给你准备一瓶水的公司,区块链大家都懂的。。。就不多说了,目前已通过等待谈 offer 中
星环科技
电面
主要是介绍自己做过的项目针对项目提了些问题
使用线程池的优点是什么
为什么想跳槽
一面
自我介绍
手写一个算法对一个数组的数组排序其中里面一层的数组里的元素是排好序的
一开始写了个归并,后面面试官说时间复杂度太高,不如直接 n 个指针指向每一个里层数组直接排序
面试官介绍公司状况,个人提了些问题
二面
一道 sql,一个表有学生,科目(每个学生的科目说不一定相等),分数三个字段,找所有科目大于 90 分的学生
开放题,服务器 1 上有 40T 的数据,服务器 2 上有一个任务需要这些数据,在网络带宽限制的情况下,怎么把数据快速传到服务器 2 上
两个链表判断是否相交,怎么找第一个相交点
三面
自我介绍
说说对线程的理解
一道算法题,一个数组找连续子数组和为 0 的数组,并返回其中最大的长度。这道题一开始用了贪心,但说最坏情况下复杂度太高,后来经过面试官提醒实现了一个 O(n)时间复杂度
HR 面
今天面的怎么样,现在对公司有了解吗
接着又详细介绍了公司的状况
有什么想问我的
总结
这周告知面试通过接下来会谈薪水,基础架构部门。星环主要是 To B 的业务,所以名声应该不太响吧,不过据说技术氛围不错,只是据说。
阿里
阿里参加的是远程视频面只有两轮面试+HR
一轮
自我介绍
针对目前公司做的项目问了线程池方面的问题,怎么实现的。项目中怎么处理容错,答:用了数据库的事务机制
说一说线程有哪些状态,线程池中异常抛出的路径知道吗
针对学校做的项目,有没有考虑分布式存储;答:数据量不大,直接用数据库塞的下
那如果数据量很大,并且我要保证实时数据和历史数据有交集有历史沉淀,你会怎么设计?
了解分布式的计算框架吗? 答:了解基本原理但没有深入使用研究过,但如果需要使用我可以自学
那你平时都是怎么自学的?
有没有参与过一些开源项目?
如果用精通,熟练。。。来描述一下你的 java 水平你会用哪个词?
看过 java 的源码吗?答:看过一点集合类
那你说一说 HashMap 的实现(这里非常详细的展开说了实现原理)
那 HashMap 安全吗?(不安全,我们可以用 blabla…)
那说说 ConcurrentHashMap 的原理
如果一个 HashMap 有一亿条数据怎么实现高效查找; 答:可以考虑优化 hash 函数减少碰撞(事后大佬指点分布不均匀的话更好的应该是进行分层)
如果一个系统要进行调优你会考虑哪些方面;答:jvm(非常详细的展开),如果有数据库查询可以用索引等等。。。
对自己的职场未来有什么规划?
二轮
自我介绍,做过的项目介绍,项目中的线程池怎么实现的
说说线程的状态
java 里实现线程有哪些方式
说一说 NIO
接下来就是全程闲聊了,没有再问别的技术问题
还是有没有参加过开源项目
你平时怎么自学
最近在关注什么;答:最近在看区块链,又在看比特币源码
那你说说比特币有什么优点呢? blabla….
说了那么多优点那他有缺点吗? blabla….
在海外读的大学那你平时怎么利用英语的优势呢
闲暇有什么个人爱好
有什么想要问我的? (皮了一下,问了面试官您在阿里工作最大的收获是什么?)
请耐心等待下一轮面试。。。
HR 面
自我介绍
为什么要跳槽
现在面了哪些公司
能不能来杭州
了解过互联网公司的文化吗
和传统 IT 比起来你觉得区别有哪些
网易互娱
投的游戏开发岗,线上笔试之后进入面试,先是 30 分钟笔试题,是关于图的连通数问题,然后进入面试
一面
说一说 jvm 的分区
说一说线程池
说一说 java 文件编译成.class 文件的过程
说一说 jvm 加载的过程
了解过网络编程吗
设计一个数据结构实现 LRU
手写算法,找图中两点之间最短路径
结束之后面试官苦口婆心的说基础不错,但是你写 java 和这里写 C++相差很大,如果来这里就要推倒重来,其实你学 java 完全可以去阿里,美团。。。但是如果做游戏的话就要一条路走到黑了,技术栈和互联网公司也会有很大不同,所以是需要一定热情的,你真的考虑好要做这一行了吗,如果你下定决心了我就给你安排二面。。。然后就没有然后了,我以考虑考虑为由就被劝退了。
总结
互娱还是挺辛苦的,面试官说两个月一轮 996,持续一个月时间。。。
小红书
一面
自我介绍,
公司里做的项目怎么容错
知道哪些常用的数据结构
synchronized 和 lock 的区别
spring 的控制反转
知道哪些设计模式,说一说建造者模式
说一说 TCP 的四次挥手
手写算法,求最大连续子数组的和
二面
手写算法,算矩阵差值实现 O(1)复杂度
手写算法,对一个数组的数组(里层数组长度不固定,可能为空)实现迭代器的 hasNext()和 next()方法
给了个应用场景,怎么设计数据库表
接下来问了一些项目当中碰到的问题
三面
部门负责人面
前面半程以聊天为主
本科为什么选择读软件工程
作系统了解吗
你最拿手的一门课是什么,说说你对他的理解
接下来好像是聊项目优化方面的事说到了索引,说说 B+树(有什么特点,索引为什么是选择 B+树实现的)最后,你来手写实现一个 hashmap 吧。
HR 面
面试感觉怎么样?如何评价前面的三个面试官?
为什么想跳槽
比较一下传统 IT 和互联网企业?
有什么想问我的吗? 答:什么时候开奖。嗯就这样吧,大家都辛苦了早点回家。。。(楼主是下午五点最后一批一直面到晚上九点)
总结
目前已拿意向书,小红书还是不错的等待面试时提供零食茶水,还有免费盒饭,地理位置也十分优越。。。
爱奇艺
一面
自我介绍,
线程中保持同步有哪些方法(synchronized 和 Lock)
白板手写单例(懒加载。。双重检查。。静态内部类)
堆和栈的区别
说说快排的原理
接下来就是和我聊一下职场感悟之类的话题了
二面
自我介绍做过哪些项目
项目中遇到的什么样的困难,你做的 APP 和现有的产品有什么区别
如果要提高并发度你会怎么重新设计你的项目
你在项目中用到的聚类算法,为什么选择它们,它们之间有何异同
为什么想跳槽
最后以一道智力题结束了面试 1,6,30,__,3031
三面
总监面,主要根据简历问了写个人情况,详细介绍了做过的项目
最后让手写了一个 TOP K,结束~
总结
爱奇艺面的是安全云部门,私有云主要是内部业务,加班相比业务部门少,问的东西也比较基础
总结
接近两个月的面试下来其实已经身心疲惫,不过结果好算不坏,在这期间也观摩了很多大佬们分享的面经,求助了很多人内推。无以为报,只有奉上自己的一些经历与教训,希望对后来的有缘人有所帮助。同时也为自己攒下人品,也希望没 offer 的能快快拿到心仪 offer,有 offer 的都能谈到心仪的薪水。
评论