腾讯_后台开发_一二三面面经
去向
- 投了美团、腾讯、字节跳动;
- 拿到腾讯、字节跳动后台开发实习生offer;
- 选择字节跳动远程实习,拒绝腾讯offer
字节跳动内推码:XXVMT6U
背景
本科机械,跨保211计算机硕士
研究生期间接触过两个横向项目,涉及技术点:
- ElasticSearch、RocketMQ、Redis
- Java、SpringBoot、Mysql、Linux
- Netty、Raft分布式算法
一面(电话面)
- TCP 三次握手
- HTTP 报文格式
- HTTP状态码
- 项目相关,权限系统怎么设计的
- 遇到过什么bug,印象深刻的,如何解决的
- select XX from XX where a = x and b = y 怎么建立索引
- 如果加一个字段c呢, select XX from XX where a = x and b = y and c = z 怎么建立索引
- 内连接和左连接的区别
- ElasticSearch倒排索引
- 浏览器打开网页的流程
- TCP编程
- 慢查询是什么?如何解决慢查询?
- 分库分表 区别
- 多线程访问相同资源 需要做什么
- synchronize和CAS的对比
- 乐观锁是什么
- HashMap HashTable CurrentHashMap
- HashMap的扩容,什么时候扩容,设了初始值的时候会不会扩容
- 一堆ip,统计Top10的ip地址
- 嘴说:二分查询
二面(电话面)
- Raft算法如何保证数据一致性
- 两阶段提交
- 两阶段提交存在什么问题
- git存储模式,管理模式
- git commit后 传到远程了吗
- git push的是什么数据
- 介绍一个自己参与度高的项目
- 遇到的记忆犹新的bug,怎么解决的
- 100层两个鸡蛋,找可以摔碎鸡蛋的楼层,最少操作几次
- 9个球,其中有一个不一样的球,通过称重的方式检查出来
三面(视频面)
- 青蛙跳
- 算法题,查找两个数组中相同的元素
- 场景题,上亿个<时间,页面,用户>的数据,进行每个页面日活的统计
- mysql的索引实现
- 优缺点