春招面经集合 头条+星环+PayPal

本文是个人春招的集合帖。每次电话面试我都会有录音(相信公司应该不介意这个吧hhh),每次面试完之后我基本都会再听一遍自己当时的回答。一是为了全面地回顾,二是听听自己当时的回答到底差在哪里。因为是集合贴,春招面试记录都在这里了,所以会写得非常长。大家可以只挑自己感兴趣的公司瞅瞅。最后拿到了头条、星环科技、PayPal的offer,最后选择了PayPal。
闲话少说,按照时间顺序开始回忆面试:

头条 1.6

圣诞夜的时候头条来南大提前招生,严格上来说,头条这应该不算是春招,提前批也不算。知道笔试过了之后,三天时间狂看JVM和Java并发。当时没什么经验,只是觉得这两块比较重要。其实大家那时候也都没什么准备。
笔试:
圣诞夜当场在纸上做的笔试。笔试有3道题,第一题题目有问题,本来贪心或者动归都能做的。。。第二题本质上是一道最长递增子序列问题。第三题大意是长为L的无摩擦的管道上有很多个小球,两个小球互相碰撞之后会掉头,速度均为1。问这些小球任意往左或者右运动,那么所有球掉出管道的最长时间和最短时间分别是多少?本质上是一道数学题,简单可证无论运动方向如何,最短时间都是往管道两端靠近的那一端运动的时间,最长时间都是往管道两端远离的那一端运动的时间。
笔试整体不算难。
一面 (视频面)1.6
  1. 自我介绍
  2. 手写快排
  3. 并发
  4. 设计模式
  5. synchronize锁static和普通方法的区别
  6. 垃圾回收机制
  7. OSI七层模型,socket在哪一层
二面 (视频面)1.6
一面结束之后1分钟就二面了。。
  1. 线程轮流打印1,2,3,4和a,b,c,d
  2. 浏览器输入一个地址到看到返回内容中间发生了什么
  3. 接着上个问题,DNS实现的机制
  4. 一个排序问题,本质上是利用桶排序
  5. 堆排,TOP K问题:小顶堆(第一学期云计算课程刚好写过。。把比堆顶小的数过滤掉)
  6. MySQL索引的实现方式?为什么用B+树不用二叉树?
  7. Java里有哪些map
  8. 手写代码:单向链表,对折成1 ->n->2->n-1->3……
HR面:1.6
当天晚上就HR面了。面试效率真的高,很喜欢头条这一点。大概问了些职业规划、家庭状况、感情状况什么的,还有就是喜欢TO B还是TO C的产品。

总结:
可以看到,因为是提前招聘,所以面得很简单,也没有问任何项目相关的事情。后来HR让去写安卓,想想和自己职业规划不太一致,就算了。


阿里 蚂蚁 3.15

春招的第一次面试就是及其糟糕的面试体验。本次面试遇到一个奇葩的面试官。迟到一小时不说,问的问题大多和后端还没什么关系,没有参考意义,写在这里纯属个人回顾。同时也是为了证明,面试有时候挺看运气的。。
一面(挂) 电话:
  1. 自我介绍,项目介绍
  2. 个人的Java学习路线,方法
  3. “舆情分析”背后的金融学原理(???黑人问号脸)
  4. 反爬虫机制
  5. 二叉树的前序遍历
  6. 机器学习,分类器的训练与评估(???黑人问号脸)
  7. 软硬件交流协议(???黑人问号脸)
  8. resetful风格
  9. HTTP缓存
  10. Java里final为什么不可变
总结:
基本全程黑人问号脸。乱七八糟地回答一大通,面试官直接电话里说“你了解得太杂了,不符合我们的要求”。。。

阿里 业务中台 3.21

一面(挂)电话:
  1. 自我介绍,项目介绍
  2. 时序数据库(不知道)
  3. 分布式rpc调度过程中要注意的问题
  4. Redis缓存一致性
  5. Redis缓存的实现方式
  6. hashmap结构与扩容
  7. 爬虫(没做过,坑爹的上个面试官在面试记录里写我了解爬虫)
  8. 场景:双十一发红包,一台电脑。十亿人。
  9. 数据库分库分表会带来什么问题
  10. 大数据?流式计算框架?
总结:
基本都是分布式问题,我没做过分布式项目,凉凉。

腾讯 3.27

一面 电话:
  1. 自我介绍,项目介绍
  2. TCP和UDP的区别?TCP处理中碰到的问题,长连接短连接的区别?粘包问题怎么解决?
  3. HTTP是怎么处理粘包问题的
  4. 四次挥手,最后等待2个MSL时间段的意义
  5. 讲快排
  6. 堆排,小顶堆的插入
  7. 算法题,分段有序数组中查找一个数字:二分
  8. Java垃圾回收机制
二面 视频笔试(挂):
这是最奇怪的一次。一面完了之后面试官本来说写个全栈的项目,后来又改成一次视频笔试,在腾讯共享文档(白板)上写代码。两道题。
  1. 八皇后
  2. 堆的插入和删除
总结:
二面两道题都做得中规中矩,正常思路。然鹅2小时后就挂了。摸不着头脑。

美团 4.28

一面 (视频):
  1. 自我介绍,项目介绍
  2. jdk中的锁
  3. synchronize和可重入锁的底层实现
  4. CAS的问题和解决?如果只要近似结果,如何避免多次while循环?
  5. hashmap、concurrenthashmap、hashtable
  6. 手写代码:求一个正整数的平方根。(二分)
二面(视频)
  1. 自我介绍
  2. Linux和Unix下的shell编程
  3. 手写代码:BST删除一个节点
  4. 手写代码:股票买卖问题
总结:
二面2个算法题都不难。当时还没刷LeetCode上的tree问题,做得很差劲。二面之后就是待定,一直到今天。

星环科技 5.8

一面(电话):
  1. 自我介绍,项目介绍
  2. Object类里的方法
  3. hashcode和equals
  4. hashmap底层结构、红黑树、扩容机制
  5. 线程安全及解决方案
  6. threadlocal
  7. 线程池参数及其执行流程
  8. classloader机制
  9. 数据库锁和sql中加锁的写法
  10. jar包冲突怎么解决
二面(电话):
忘了,反正问了些Java基础和spark相关的东西。因为简历里实在不知道写啥,把spark大作业写上去了。星环是大数据公司,逮着问了几个spark,map-reduce,rdd的问题,顺势有问了图算法。整体不难。
总结:
简历上项目要足够熟悉。要有实际经验,如:jar包冲突,sql里加锁。

拼多多 5.11

一面(现场):
  1. 自我介绍,项目介绍
  2. 项目接收socket流,项目崩掉是不是就丢了socket数据了?
  3. springMVC和springboot的区别
  4. 序列化协议
  5. 手写代码:LRU-***的实现(不要用linkedhashmap)
二面(现场):
  1. 自我介绍,项目介绍
  2. MySQL事务特性和隔离级别
  3. HTTP缓存机制
  4. 说说TCP?详细说说拥塞控制的方法
  5. 说说Java,说说什么是面向对象
  6. 说说设计模式(因为说了基本都了解,被面试一通疯狂追问)

HR面(现场):
调查户口系列。。
总结:
一面发挥不太好。spring没怎么准备。LRU的get方法直接忘记怎么写了。二面面了80分钟,面试官加了微信,跟我介绍了项目的业务。

PayPal 5.13

一面(视频):
主管,摸底系列。随便问问,有技术以后生活,了解我大概情况。

二面(视频):
  1. 自我介绍,项目介绍
  2. 怎么设计restful api
  3. object类里的方法
  4. 算法题:寻找最长回文子串
  5. 算法题:重复数
三面(视频):
  1. 自我介绍
  2. 手写代码:Java实现栈
  3. 手写代码:利用2个栈,对一列数排序
  4. 设计模式,手写单例
总结:
算法题还是要多刷。。

春招结束了。4月份身体不舒服一直在医院,可能错过了一些面试,可惜了。最后选择了PayPal,我个人很看重外企对生活和工作的balance,而且要去的是基础架构部门,再加上有线上支付业务,感觉可以学到很多东西。实现最重要的还是学习技术吧。
特别说明:可能有错别字、笔误、记忆偏差和用词不当。关于笔试和面试内容,若对以上任何公司造成侵权,请联系本人删除。


#阿里巴巴##腾讯##paypal##拼多多##面经##Java工程师#
全部评论
你paypal三面面试官问的和我去年问的一样
点赞 回复
分享
发布于 2019-05-18 01:08
噗发现你了
点赞 回复
分享
发布于 2019-05-18 11:43
乐元素
校招火热招聘中
官网直投
我院大佬nb
点赞 回复
分享
发布于 2019-05-26 21:10
大佬,是PayPal的暑期实习么?
点赞 回复
分享
发布于 2019-05-26 21:48
这怕不是我海龙大大吧orz膜一下啊
点赞 回复
分享
发布于 2019-06-05 23:27
大神面的什么岗啊 怎么什么都问
点赞 回复
分享
发布于 2019-06-05 23:32
大神你是本科生还是硕士生,没考虑读研么
点赞 回复
分享
发布于 2019-06-09 17:08
同样喜欢irving2333 同样喜欢基础架构部门2333
点赞 回复
分享
发布于 2019-06-09 17:42
想问一下大佬学历是985、211还是普通本科呀😀
点赞 回复
分享
发布于 2019-06-09 18:55
能否介绍一下您的项目呢😀
点赞 回复
分享
发布于 2019-06-30 10:15
你好请问下我听说paypal加班一般没有,但工作时间内节奏还是蛮快的,请问你体会下来是这样吗?谢谢
点赞 回复
分享
发布于 2020-04-02 16:47
想问一下怎么找PayPal的暑期实习啊
点赞 回复
分享
发布于 2021-04-21 22:04
请问“利用2个栈,对一列数 排序”这道题,leetcode 有吗?
点赞 回复
分享
发布于 2022-01-27 16:17

相关推荐

#软件开发2024笔面经#一面面试官:先来个布局的吧!如何让一个元素垂直居中我:行内元素就line-height、块级元素就flex、grid、table-cell布局都可以,还有定位+translate,这个兼容性较好。面试官:了解过新的css属性?比如layer我:没有面试官:说一下this我:this是运行时上下文,是函数内为了访问类的属性而存在,其中箭头函数的this就是其定义时外部的this,而bind、call、apply都可以改变函数内this的指向。面试官:箭头函数的this可以改变吗?我:没试过面试官:做道题吧,深拷贝我:知道,但是没写过我:写了个递归+复制对象的属性面试官:如果入参不是对象怎么办,比如boolean、number、string、null、undefined、array我:补充了很多判断代码,基础数据类型/null/undefined就直接返回、array/objet就forin遍历然后返回面试官:如果a对象引用了b对象,b对象引用了a对象怎么办,引用循环问题我:写了一个cache缓存器,如果遍历过程中cache中有a,则直接返回,不再深拷贝面试官:你这个cache怎么清空,什么时候清空我:这里我并没有将cache传入给深拷贝函数,在函数体里面清空,而是在函数体外定义、清空cache。然后面试官推荐了一个写法,将cache传入进去,然后在深度为1时清空它。属于缓存优化面试官:再做一道题吧,promise相关的我:如果了解promise的话,这题不难,说出打印顺序即可一面说实在我还是很菜的,深拷贝得面试官多次提醒才能完善,但至少还在可接受范围内,面试官很柔和。二面面试官:你先做一下这道题,只能使用队列,不能使用别的数据结构来实现栈的功能。我:考虑了几分钟后,我说出了思路,在入栈时,调用的入队,同时更新min最小值。出栈时将队列中的最后一位的前面的元素都拿出来,然后放入队列后,然后拿出最后一个就是出栈元素。但是打印最小值时有点问题,我想了一会,然后得出,在出栈时,会遍历到所有的元素,所以可以在这个过程更新最小值。面试官:好,那你写出来吧我:写呀写,写完之后,有个用例没法通过,然后人脑debug一下,原来在出栈时,更新最小值时,得先将最小值重置。面试官:问了简历里,写的所有的项目面试官:那你说一下vue和react的差别吧我:vue2了解的多,react了解不多,两者最大的区别是虚拟dom结构,vue2是一颗结构很正常的树,react是一个fiber树,两者树的实现方式不一样。react的patchnode算法和vue的不一样,react是全量比较vDom,vue是组件层级比较vDom。react和vue的对于children的比较算法也不一样,然后,个人觉得vue高效一些(这里答的有点模糊了我)。二面面试官属于硬核派,上来先做题,但确实是知识面碾压。三面-主管面-电话面之前不知道主管面是什么,我以为还是技术面,所以我回答的有点牛头不对马嘴了。面试官就主要问项目实现方式(不需要硬核的技术层)就没了。内推链接:(实习生招聘)https://careers.pinduoduo.com/campus/intern?t=Q1RKK3fACC,内推码:Q1RKK3fACC欢迎随时咨询联系
点赞 评论 收藏
转发
16 173 评论
分享
牛客网
牛客企业服务