先说一下个人的总体情况,西电大三计科,没有实习和太多实践经验(只有自己写的博客什么的),数据结构和算法还行,在滴滴前面过很多次字节,三次三面挂,好未来golang过了,还有许多中小厂就忘了,也没过。
总共也许接近二十次面试经历?滴滴的面试体验在我的个人经历里算是非常不错的,就是事后通知太慢,还是我自己去问的二面....
二面都是三天前的事情了,所以可能忘了很多问题,不过还是给大家一个参考吧
### 一面
### 数据库
- 索引(答了聚簇索引和非聚簇索引)
- 非聚簇索引是如何查询的
- 隔离级别
- RR是如何实现的(INNODB MVVC)
- 在RR级别下能够读到事务ID靠后未提交的修改吗(不会,提示说是锁,最后告诉我加写锁,建议我自己去试一试)
#### 网络
- UDP,TCP
- TCP差错控制、流量控制,拥塞控制
- HTTP(没答出3.0是啥)
- RESTful
#### go
- 切片和数组
- 切片的问题
- go的通信实现
- channel的底层
- map的实现
- 哈希过程是什么样子的
- 桶的增加(这个具体还挺复杂的)
- map线程安全吗?sync.map
- gc过程
#### 算法
- 反向输出层序遍历(简单)
反问:
- 什么部门?
### 二面
#### 网络
- get,post区别,post就不能在URL上附加参数吗(可以,http只是规范,服务端会解析你爱怎么样都行)
- 三次握手如果改成发序列号x,回序列号x+1,再发x+2可以吗?(序列号预测攻击)
#### 数据库
- 索引
- 给了实际问题是并发问题(忘了是啥)
- 如果有很多很多数据,分页显示,如何去做
- 联合索引
- 分布式环境如何加锁(不会)
#### go
- sync.map实现
- map哈希过程(讲错了一点点,忘了可能插入相同键不同值)
- 锁的底层实现是什么(不会,给了个人的猜测)
聊天半小时:
- 你个人常写代码吗?
- 你最主要的代码规范经验是什么?
- 万一公司有很多不合理的规范怎么办?
- 你想学到什么?
- 不符合你的预期怎么办?
- 实习多久
#### 算法
- 二叉树和为n的从上向下路径(简单)
反问:
- 听说go有什么什么的缺陷,你怎么看
- base地点能选杭州吗(只有北京,可惜了,还是更想杭州离家近)
追加一个问题,多线程处理问题你觉得开多少个线程(开放问题,情景自己考虑)
有疑问加站长微信联系(非本文作者))