腾讯云客户端三面 96min

4.10晚上21:10 ~ 22:46
总监面,总监是真的很有东西,整体感觉是中了月读一样被绑起来拷打
面完直接emo,但是其实当晚就给我过了,第二天早上7点发现进HR了...
尽可能回忆一下面经:

1.自我介绍+挑一个项目讲讲(我是java,但挑了更契合业务的cpp项目讲)
2.共享内存展开深挖。
大概是这样:共享内存和分页有什么关系?要我当操作系统设计共享内存怎么建立内核态内存和用户态内存的映射关系?说mmap不够,要听更底层的,分页管理那一层的具体细节。分页怎么做,一个进程一个页还是怎么说?不同进程怎么用一个页?还是不同页?还是一个系统一个页?用不同页那怎么解决通信问题?(我直接被干晕了,没办法,只能竭尽毕生所学尽量分析)
3.打开记事本充当白板,面试官手写一个CMyString *s = new CMyString(“hello”);让我分析这个s指针指的内存地址里第一个字节是什么,第二个字节是什么,按顺序这些字节里面装的都是什么?(我结合了java对象结构来分析的因为cpp的我确实不熟)
4.追问,这种字符串类型你觉得合适吗?(不合适,扩容要创建新对象,所以我前面其实回答了字符数组类型存储)追问,你定义一个struct怎么改造一下?(我看过redis底层,我就说了SDS的结构)分析一下这个struct多大?
5.基于3,4问题追问内存碎片问题怎么解决?叫我提出方案。
6.常规数据结构算法,大量单词检索方法,我说了四种  B+树  字典树 hash表 布隆过滤器。要我分析时间复杂度。为什么字典树是O(n)n是单词长度,hash表就是O(1)呢?我以为我说错了他说是对的,这给我干懵逼了,后面根据提示我反应过来了答对了。

反问:
1.我感觉前面表现的不好。我问了要不要我这种java打算转语言的,他说给我一个希望我听进去的建议:这和语言没有关系,任何语言都是要学到操作系统和硬件层深入理解,语言的区别可能只有岗位薪资高低,业务的不同罢了。(面试提问期间也确实多次提到了学java容易让人忽略底层原理,(这里底层指操作系统和cpu内存那些设计))评估一个人要多方面考虑,分析能力,解决问题的能力,学习能力等等,觉得我还不错(安慰了一下)。
2.没有技术面了

面完直接emo,结果还是过了。
#腾讯##腾讯云##腾讯云三面##腾讯云实习##java##客户端#
全部评论
时间复杂度那里要往高速缓存的原理想,我也是被他举了一个什么芯片的案例提示到了,局部性原理减少访存次数,这个是关键点。
2
送花
回复
分享
发布于 04-11 11:07 湖北
我也被快手面试官也教育了,说更注重应届生的基础,在基础之上才是语言和框架
1
送花
回复
分享
发布于 04-11 14:08 福建
滴滴
校招火热招聘中
官网直投
佬,那什么语言好一点
点赞
送花
回复
分享
发布于 05-14 07:30 广西

相关推荐

1. 自我介绍2. 转客户端是出于什么考虑?3. 你的项目登录这里对于安全性是怎么考虑的?4. 你信息传输过程中会不会被截获?会不会被中间人攻击?5. HTTPS为什么要用非对称加密和对称加密?为什么不只用其中一个呢?6. 对称加密和非对称加密的性能差距有多大?7. 验证码会不会被暴力破解?密码会不会被暴力破解?彩虹表有了解吗?8. 这个本地缓存caffeine是个什么东西?9. 数据库和缓存的数据一致性是如何保证的?如果我想实现强一致性那如何保证呢?10. 如果你手动更新数据库,导致缓存中数据被删了,此时有大量的请求过来全打在数据库上怎么处理?11. 视频上传你后台有做限制吗?如何管理分片的?可以支持并发上传吗?每个分片多大?对于某个分片支持断点续传吗?上传速度怎么样?如何提高上传速度?12. 查询接口的并行化处理是怎么实现的?能不能把多个接口统一一下只做一次查询呢?13. 你这个网站的性能瓶颈在哪?如果带宽给到足够大,剩下的你觉得哪个会最先到达性能瓶颈?除了带宽、内存和CPU,还有什么要考虑的?硬盘除了容量,还有什么要考虑的?14. 你的机器有几台?如果是集群,如何实现不同机器之间数据的一致性?强一致性如何实现?15. 什么时候决定转客户端的?有学习过一些客户端的内容吗?有没有自己做过demo?16. 设计一个微信朋友圈的功能,你会如何考虑里面后台的存储?17. 对于一条朋友圈,你在发布的时候将这条朋友圈内容去写入到每个好友的朋友圈表里还是在好友刷朋友圈的时候才去从每个好友的表里去读朋友圈内容?你觉得这两种方案哪个更好?18. 这两种方案有专业名称叫写扩散和读扩散,结合朋友圈那个例子,你觉得写扩散和读扩散有什么优缺点?19. 什么时候来实习?实习多久?反问1. 有没有转正机会?2. 具体的工作内容?3. 需要学习哪些东西?
点赞 评论 收藏
转发
4 20 评论
分享
牛客网
牛客企业服务