【阿里巴巴】C++岗-春招五轮拿offer

春招很忙,就面了两个公司,碰巧都过了,算回报牛客.我本人不喜欢什么小细节都讲,碰到不熟悉的请自己查资料(因为有的东西每个人理解不一样)

1面 评估面

面试官:给我讲讲浏览器输入地址后发生的全过程.(每一个细节都讲)
我:http DNS 三次握手 arp rarp …巴拉巴拉
面试官:讲讲为什么是三次握手,四次挥手
我:2次握手超时数据包会影响很大,三次握手容易遭到syc攻击,四次挥手很多情况下是三次(tcpdump抓)以及常见的粘包,数据包安全.滑动窗口.巴拉巴拉
面试官:内存分布
我:堆.栈.常量区,静态区.....
面试官:讲讲虚函数
我:虚函数表,以及虚函数的内存布局,虚函数的局限,c++11的提供的类似虚函数的新函数.两种动态多态实现的区别以及优缺点
面试官:讲讲进程和线程
我:常见的一些书本知识,在寄存器和堆栈上的区别,协程的实現,异步和同步编程.
面试官:讲讲你的实习吧
我:随便聊了会
面试官:我没什么想问你的了.

2面

面试官:类什么时候会析构?
我:巴拉巴拉
面试官:写个算法
我:线上手写
面试官:虚函数底层机制
我:跟一面一样回答
面试官:实习在linxu下开发吗
我:恩
面试官:懂linux内核吗
我:不太懂.

3面

面试官:c++解决内存泄漏方法
我:巴拉巴拉一堆
面试官:查内存泄露
我:valgrid
面试官:讲讲你实习做的东西
我:讲了我们团队做的东西,同事大部分bat 多年工作经验,对阿里做的东西也很熟悉,聊的很随意

4面(交叉)

面试官:大区间求和
我:只想出归并
面试官:讲讲codis和redis源码
我:这块很熟,我也讲的很多,包括性能瓶颈,主流公司的网络框架.以及代码改进,面试官还算满意
面试官:讲讲bigtable mapreduce 以及其他著名开源分布式存储代码
我:只看过kafka和缓存
面试官:要多学点

5面(个人感觉最难几乎社招要求)

首先让我自己把tcp/ip讲个遍。
分布式系统分片的极限在哪,linux系统的极限。redis集群最大能支撑多少台物理机,
怎么解决副本一致。
分布式缓存怎么设计,
配置中心怎么开发,
zookeeper的原理,
二次提交原理。
讲一下阿里云的产品以及阿里云对缓存的改进(我提了一下tair的设计)。。

发表评论

后才能评论