这篇腾讯 CSIG 地图引擎一面很典型地说明了一件事:项目问得细,不代表后面的基础题就会轻。
原始记录里,前 20 分钟左右都在问项目并发和数据一致性,随后才开始切:
vector虚函数
TCP / UDP
三次握手 / 四次挥手 / TIME_WAIT
最后一道二叉树 BFS
这种风格很像腾讯偏工程的团队:先看看你项目是不是像样,再快速扫基础。
校招大礼包获取:入口
可能是至今最全,最好,最实用的校招大礼包,减少信息差,预期漫步无敌的刷提,不如有的放矢,针对性的准备,这样才能有效备考,有了这份资料,不说100%拿到offer,至少帮你提升50%概率拿到offer
这篇面经适合谁看
如果你准备投腾讯地图引擎、偏并发、偏性能工程的开发岗,这篇很有参考价值。
面试流程速览
结构大致是:
项目并发和一致性
C++ 容器和虚函数
网络协议和可靠性
算法:二叉树广度优先遍历
每块都不算特别夸张,但放在一起很能看出你的真实水平。
项目部分为什么一上来就怼得很细
原始面经里项目部分重点问的是:
如何控制并发
如何保障数据一致性
这说明这个岗位很在意:
你是否真正做过高并发或共享状态相关的项目
你是不是只会讲功能,不会讲一致性设计
C++ 和网络题在看什么
后面的问题包括:
vector::resize、迭代器失效虚函数、纯虚函数、虚函数能否静态
TCP / UDP 区别
TCP 为什么可靠
三次握手 / 四次挥手
服务端收不到第四次挥手怎么办
TIME_WAIT 为什么是 2MSL
这组题说明:
容器和对象模型要稳
TCP 状态和可靠性要能讲细
特别是 TIME_WAIT、SYN FLOOD 这类问题,已经不只是“会背基础定义”了。
从这篇面经里能看出腾讯地图引擎在筛什么
你的并发项目是否真实
你的 C++ 容器和虚函数是否过关
你的 TCP 细节和状态是否扎实
你的基础算法题是否稳
如果你准备这类岗位,这几块要重点补
项目里的并发和一致性设计一定要准备深挖。
vector、迭代器失效、虚函数这条 C++ 线要非常稳。TCP 可靠性、TIME_WAIT、握手挥手细节要准备到可追问。
BFS / 树遍历这类题别掉。
最后提醒
这篇面经最值钱的地方,是它说明:偏地图引擎 / 并发工程的岗位,项目和网络通常会一起成为主战场。