作者:KyrieIvring2
链接:https://www.nowcoder.com/discuss/191626
来源:牛客网
本文是个人春招的集合帖。每次电话面试我都会有录音(相信公司应该不介意这个吧hhh),每次面试完之后我基本都会再听一遍自己当时的回答。一是为了全面地回顾,二是听听自己当时的回答到底差在哪里。因为是集合贴,春招面试记录都在这里了,所以会写得非常长。大家可以只挑自己感兴趣的公司瞅瞅。最后拿到了头条、星环科技、PayPal的offer,最后选择了PayPal。
闲话少说,按照时间顺序开始回忆面试:
头条 1.6
圣诞夜的时候头条来南大提前招生,严格上来说,头条这应该不算是春招,提前批也不算。知道笔试过了之后,三天时间狂看JVM和Java并发。当时没什么经验,只是觉得这两块比较重要。其实大家那时候也都没什么准备。
笔试:
圣诞夜当场在纸上做的笔试。笔试有3道题,第一题题目有问题,本来贪心或者动归都能做的。。。第二题本质上是一道最长递增子序列问题。第三题大意是长为L的无摩擦的管道上有很多个小球,两个小球互相碰撞之后会掉头,速度均为1。问这些小球任意往左或者右运动,那么所有球掉出管道的最长时间和最短时间分别是多少?本质上是一道数学题,简单可证无论运动方向如何,最短时间都是往管道两端靠近的那一端运动的时间,最长时间都是往管道两端远离的那一端运动的时间。
笔试整体不算难。
一面 (视频面)1.6
- 自我介绍
- 手写快排
- 并发
- 设计模式
- synchronize锁static和普通方法的区别
- 垃圾回收机制
- OSI七层模型,socket在哪一层
二面 (视频面)1.6
一面结束之后1分钟就二面了。。
- 线程轮流打印1,2,3,4和a,b,c,d
- 浏览器输入一个地址到看到返回内容中间发生了什么
- 接着上个问题,DNS实现的机制
- 一个排序问题,本质上是利用桶排序
- 堆排,TOP K问题:小顶堆(第一学期云计算课程刚好写过。。把比堆顶小的数过滤掉)
- MySQL索引的实现方式?为什么用B+树不用二叉树?
- Java里有哪些map
- 手写代码:单向链表,对折成1 ->n->2->n-1->3……
HR面:1.6
当天晚上就HR面了。面试效率真的高,很喜欢头条这一点。大概问了些职业规划、家庭状况、感情状况什么的,还有就是喜欢TO B还是TO C的产品。总结:
可以看到,因为是提前招聘,所以面得很简单,也没有问任何项目相关的事情。后来HR让去写安卓,想想和自己职业规划不太一致,就算了。
阿里 蚂蚁 3.15
春招的第一次面试就是及其糟糕的面试体验。本次面试遇到一个奇葩的面试官。迟到一小时不说,问的问题大多和后端还没什么关系,没有参考意义,写在这里纯属个人回顾。同时也是为了证明,面试有时候挺看运气的。。
一面(挂) 电话:
- 自我介绍,项目介绍
- 个人的Java学习路线,方法
- “舆情分析”背后的金融学原理(???黑人问号脸)
- 反爬虫机制
- 二叉树的前序遍历
- 机器学习,分类器的训练与评估(???黑人问号脸)
- 软硬件交流协议(???黑人问号脸)
- resetful风格
- HTTP缓存
- Java里final为什么不可变
总结:
基本全程黑人问号脸。乱七八糟地回答一大通,面试官直接电话里说“你了解得太杂了,不符合我们的要求”。。。
阿里 业务中台 3.21
一面(挂)电话:
- 自我介绍,项目介绍
- 时序数据库(不知道)
- 分布式rpc调度过程中要注意的问题
- Redis缓存一致性
- Redis缓存的实现方式
- hashmap结构与扩容
- 爬虫(没做过,坑爹的上个面试官在面试记录里写我了解爬虫)
- 场景:双十一发红包,一台电脑。十亿人。
- 数据库分库分表会带来什么问题
- 大数据?流式计算框架?
总结:
基本都是分布式问题,我没做过分布式项目,凉凉。
腾讯 3.27
一面 电话:
- 自我介绍,项目介绍
- TCP和UDP的区别?TCP处理中碰到的问题,长连接短连接的区别?粘包问题怎么解决?
- HTTP是怎么处理粘包问题的
- 四次挥手,最后等待2个MSL时间段的意义
- 讲快排
- 堆排,小顶堆的插入
- 算法题,分段有序数组中查找一个数字:二分
- Java垃圾回收机制
二面 视频笔试(挂):
这是最奇怪的一次。一面完了之后面试官本来说写个全栈的项目,后来又改成一次视频笔试,在腾讯共享文档(白板)上写代码。两道题。
- 八皇后
- 堆的插入和删除
总结:
二面两道题都做得中规中矩,正常思路。然鹅2小时后就挂了。摸不着头脑。
美团 4.28
一面 (视频):
- 自我介绍,项目介绍
- jdk中的锁
- synchronize和可重入锁的底层实现
- CAS的问题和解决?如果只要近似结果,如何避免多次while循环?
- hashmap、concurrenthashmap、hashtable
- 手写代码:求一个正整数的平方根。(二分)
二面(视频)
- 自我介绍
- Linux和Unix下的shell编程
- 手写代码:BST删除一个节点
- 手写代码:股票买卖问题
总结:
二面2个算法题都不难。当时还没刷LeetCode上的tree问题,做得很差劲。二面之后就是待定,一直到今天。
星环科技 5.8
一面(电话):
- 自我介绍,项目介绍
- Object类里的方法
- hashcode和equals
- hashmap底层结构、红黑树、扩容机制
- 线程安全及解决方案
- threadlocal
- 线程池参数及其执行流程
- classloader机制
- 数据库锁和sql中加锁的写法
- jar包冲突怎么解决
二面(电话):
忘了,反正问了些Java基础和spark相关的东西。因为简历里实在不知道写啥,把spark大作业写上去了。星环是大数据公司,逮着问了几个spark,map-reduce,rdd的问题,顺势有问了图算法。整体不难。
总结:
简历上项目要足够熟悉。要有实际经验,如:jar包冲突,sql里加锁。
拼多多 5.11
一面(现场):
- 自我介绍,项目介绍
- 项目接收socket流,项目崩掉是不是就丢了socket数据了?
- springMVC和springboot的区别
- 序列化协议
- 手写代码:LRU-cache的实现(不要用linkedhashmap)
二面(现场):
- 自我介绍,项目介绍
- MySQL事务特性和隔离级别
- HTTP缓存机制
- 说说TCP?详细说说拥塞控制的方法
- 说说Java,说说什么是面向对象
- 说说设计模式(因为说了基本都了解,被面试一通疯狂追问)
HR面(现场):
调查户口系列。。
总结:
一面发挥不太好。spring没怎么准备。LRU的get方法直接忘记怎么写了。二面面了80分钟,面试官加了微信,跟我介绍了项目的业务。
PayPal 5.13
一面(视频):
主管,摸底系列。随便问问,有技术以后生活,了解我大概情况。
二面(视频):
- 自我介绍,项目介绍
- 怎么设计restful api
- object类里的方法
- 算法题:寻找最长回文子串
- 算法题:重复数
三面(视频):
- 自我介绍
- 手写代码:Java实现栈
- 手写代码:利用2个栈,对一列数排序
- 设计模式,手写单例
总结:
算法题还是要多刷。。
春招结束了。4月份身体不舒服一直在医院,可能错过了一些面试,可惜了。最后选择了PayPal,我个人很看重外企对生活和工作的balance,而且要去的是基础架构部门,再加上有线上支付业务,感觉可以学到很多东西。实现最重要的还是学习技术吧。
特别说明:可能有错别字、笔误、记忆偏差和用词不当。关于笔试和面试内容,若对以上任何公司造成侵权,请联系本人删除。
与作者交流:https://www.nowcoder.com/discuss/191626
更多笔经面经:https://www.nowcoder.com/discuss?order=0&type=2