首页 > 笔经面经 > 19届双非本科菜鸡社招面经(蚂蚁、滴滴、快手、图森、猿辅导)

19届双非本科菜鸡社招面经(蚂蚁、滴滴、快手、图森、猿辅导) 内部员工回复

头像
!? #面经#
编辑于 2021-01-25 18:20:50 APP内打开
赞 15 | 收藏 86 | 回复13 | 浏览4662
背景: 19届双非本科,计算机科学与技术专业,目前主要是golang,广告方向,偏技术方向
准备过程: 12月初开始 修改简历,花了两周多点的时间看了看 面经和牛客网上的 算法题

最右(12月中 后台开发  offer)

算法相关: 1. 层序遍历 二叉树 2. 判断 二叉树是否是镜像 二叉树,3.堆排
中间件: kafka丢失消息和不重复消费, redis底层数据结构实现,aerospike和 redis的区别(架构、使用等)
数据库: mysql索引, mongodb和mysql索引的区别,给了条sql语句问索引怎么构建
golang: 切片和数组、map、gc、gpm调度模型等
项目: 项目详细过程、高并发限流、熔断等等等等
其他:时间太久忘了,大概还记得这几个吧🤣🤣🤣🤣🤣

知乎(12月中 搜索引擎研发 一面挂)

算法: 链表翻转
基础:mysql索引相关, redis底层实现,golang基础,你们广告检索系统怎么做的,底层用的什么数据结构......
最后面试官说你们这个搜索和我们这个不太一样,然后就挂了

探探(12月底,二面挂)

算法: 1. 对一个 链表进行 排序, 2.
数据库:mysql引擎知道哪些,有哪些索引,底层是怎么实现的
中间件: redis底层实现(这个地方两面都问了,问的有点深入)
golang相关
最后挂了,感觉也是答的不太好

猿辅导(12月底  斑马服务端offer 3+1)

内推简历免筛选

一面(12.23  50min):
1. 自我介绍 项目相关
2. redis最常用的数据结构,说一下底层实现原理
3. 项目详细描述和提问
4. 算法,给n个数 1-n,随机n次,将这n个数输出
5. java和golang的一些共同点以及区别
6. 线程和协程的区别
7. io多路复用,select\poll\epoll的实现和区别
8. 三次握手和四次挥手
9. 长连接和短链接(怎么实现的、区别以及应用场景)
提问环节:介绍了部门的一些情况和技术栈
第二天早上hr通知面试通过

二面(12.25 45min):
1. 自我介绍 项目相关
2. kafka重复消费和丢失消息的场景以及解决方案
3. 三次握手四次挥手
4. 算法:计算 二叉树所有左叶子节点的和
6. 项目相关
7. 提问
面完半小时hr反馈面试通过约了三面,疫情原因约了元旦后

三面(1.6 40min):
1. 自我介绍
2. 问 项目相关
3. 算法: n个有序的数组合并成一个
4. redis使用和原理
5. 提问
面完下午hr通知面试通过,约了hr面

滴滴(offer 服务端研发  2+1+1)

一面(1.4  1h10min):
1. 自我介绍
2. 项目
3. 协程和线程的区别,内核态和用户态
4. GPM调度模型
5. b-tree和b+tree
6. 算法: 二叉树中序遍历,递归和非递归两种方式
7. kafka如何保证消息有序,消息的重复和丢失
8. i/o多路复用 select/poll/epoll
9. 三次握手和四次挥手
10. http和https的区别,https建立连接的过程
11. http1.1 和 http2.0的区别
12. 缓存和数据库一致性的问题
13. sync pool的实现原理
14. 有了解过php吗
提问环节
1h后hr联系面试通过

二面(1.5  40min):
1. 自我介绍
2. 项目相关以及为什么想要换工作
3. hash冲突解决办法,有什么弊端
4. map里面解决hash冲突怎么做的,冲突了元素放在头还是尾
5. 10亿的url去重怎么做
6. redis zset怎么使用的,底层怎么实现的,适用于什么场景
7. 你这边最早能什么时候入职
...
后面全程聊天了

下午hr通知面试通过
滴滴后面都是hr面

蚂蚁(面试已通过 等谈offer)

一面(1.3 45min):
先做了一道算法题: 单链表找到中间节点
1. 自我介绍
2. 详细介绍项目和提问
3. java和golang的一些通用的gc,内存,数据结构等对比
4.hashmap是线程安全的吗,会有什么线程安全问题
5. 提问,说完反馈面试通过

二面(1.5 1h10min):
全程围绕项目在问
最后比较详细介绍了部门做的一些事和一些面试反馈

三面(30min 1.14)
1. 自我介绍
2. 项目(包括设计、扩展性等,细节问的较多)
3. 设计一个秒杀系统
4. 讲一个最熟悉的数据结构
5. 提问
ps:三面面试官贼帅

快手(1月10   3+1+1 offer)

一面(1.10 35min)
1. 自我介绍
2. 聊项目
3. 算法: 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
4. golang和java的一些共同点和区别
5. 结束,面试官直接通知后面有二面🤣

二面(1.10  65min)
1. 自我介绍
2. 项目相关
3. jvm调参(直接说不会,主要语言用的golang)
4. while(tree) {sleep(1)}  这个会有什么问题
5. sleep底层实现原理
6. io多路复用 select/poll/epoll
7. redis怎么使用的,用了哪些结构,了解过实现原理吗(zset, hash),用过哪些api
8. golang协程介绍,包括实现、调度、和线程对比、内存等
9. 线上问题一般怎么排查,比如oom
10. 算法: 手写LRU,结构,增删改查
结束

三面(1.11 25min)
1.自我介绍
2. 为什么要换工作
3. 实现一个线程池,说原理和数据结构
4. 可重入锁
6. 算法: 链表翻转,要求用java写🤣
7.对未来工作有什么考虑和想法
hr面

图森未来(1月中  3 3面挂)

一面(1.8 60)
1. 自我介绍
2. 聊项目
3. 算法:

输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。

输入: array = [-2,1,-3,4,-1,2,1,-5,4]

输出: 6

解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。

4. 算法:

图森卡车进行的是仓到仓的运输工作,目前各个地区的仓库以及仓库间的高速公路组成了一棵树,卡车需要能够从任意一个仓库运输到另一个仓库。

卡车通过相邻仓库之间的高速公路需要用 1 个单位的油,求油箱需要设置多大才能满足运输要求(运输途中不能加油)

5. 算法:

给定 n 个算法训练任务,每个任务都要独占机器 1 小时。原来第 i 个任务应在第 i 小时开始做。由于突发情况停电了 k 小时,所有任务都要推迟,即时间区间从原来的 [1, n] 改为 [1+k, n+k] 小时。

但是第 i 个任务每推迟一小时就会损失 cost[i]。现在要对这 n 个任务重新调度顺序,要求不能原来开始时间更早,求最小的损失。


二面(1.11 1h10min)
1.自我介绍
2. 项目
3. sync pool底层实现
4. docker和虚拟机区别
5. k8s底层原理
6. linux文件系统
7. 网络七层模型和五层模型
8. 数据库索引
9. linux命令
10. 三次握手和四次挥手
11. http和https区别,https建立链接过程
12. http状态码相关
13. redis数据结构和底层实现

三面(1.12 1h10min)
全程聊项目

字节

挂了三个部门🤐


更多模拟面试

13条回帖

回帖
加载中...
话题 回帖

相关热帖

笔经面经近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

热门推荐