面试复盘 | 拼多多三轮面经(拼越计划)
LZ是7月底投递的拼多多,批次走的是拼越计划。8月8日笔试完后,从8月中旬到8月底走完了3轮技术面+1轮HR面,历时半个月,现将面经分享给大家,供后续参加提前批或正式批的牛油们参考~
一面 40min 8月14日
一面主要根据简历上的比赛、项目、实习内容进行发散提问,八股文很少。
简历内容
华为软挑背景及方案介绍
讲讲epoll
介绍项目中的定时器管理器时间轮
服务器处理一个HTTP请求的过程
Redis是如何处理IO任务和定时任务的
实习内容介绍
一次RPC调用的完整流程是什么
负载均衡算法有哪些
介绍一致性哈希算法
如何设计一致性哈希算法、会用到哪些数据结构
限流算法有哪些,线上高并发情况下选用哪个算法合适
熔断策略
如何实现一个线程池
场景题
拼多多有20亿商品,如何查询销量前100的商品【海量数据TopK】
如果是多核处理器,如何进行查询优化?
算法
- 岛屿数量【LC200】
反问环节
- 部门业务、技术栈
- 后续面试流程
二面 60min 8月17日
二面比较戏谑,面试房间中途音频坏掉了,最后面试官当场加微信用微信面试。
实习内容介绍
比赛介绍
项目介绍
计算机基础:
C++中如何定义一个不能被继承的类
堆和栈在多线程情况下是如何操作的
线程的私有数据存放在哪里
一个服务器进程挂掉后,如何查看进程中各线程的状态【存疑】
如何查看有哪些客户端的ip:port连接到当前服务
讲讲平衡树和哈希这两类数据结构
场景题
- 磁盘中有多个海量日志文件,文件中每条日志都有时间戳,如何查找给定时间窗口内的日志?
算法
线程安全的单例模式
输入一个字符串,按照给定规则进行压缩或删除【硬编码题型】
三面 25min 8月24日
- 服务器项目
微服务
后台服务的client节点和server节点间的调用延时可能有哪些原因
RPC调用中的序列化和反序列化过程耗时太久,有哪些主要原因
PB或JSON等序列化的内部实现原理了解过么
哪些序列化协议比PB协议快
场景题
- 磁盘上的一个海量数据文件,每行保存一个查询字符串,统计词频TopK的字符串
其他
操作系统、计算机网络、数据库、存储、分布式,这几方面你哪些擅长、哪些不擅长
讲讲你个人的优势和劣势
反问环节
- 部门分配问题
HR面 15min 8月30日
- Hr面就是问些基本问题:学校、家庭、有无另一半、目前意向书情况、就业选择等,比较常规。
总结
- 三轮技术面面下来,感觉拼多多每面都会问场景题,尤其是海量数据方面的,大家可以针对性的准备下这方面
- 八股文内容很少,面试官基本都会看着你的简历展开来问,所以首先要把自己简历上写的内容要掌握,其次可以设想下面试官会针对简历上的点展开问哪方面,提早做准备,面试面多了这一点就知道了,说到底还是个经验问题。
讨论
- 一个服务器进程挂掉后,如何查看进程中各线程的状态
- 后台服务RPC调用大多使用PB协议,有哪些协议比PB还要快