首页 > 腾讯C++后台开发实习面经(已拿offer)
头像
聊少少
编辑于 2020-04-02 16:36
+ 关注

腾讯C++后台开发实习面经(已拿offer)

过程是曲折的,结果是美好的。

师姐直接内推自己的部门,TEG。

面完后凭记忆复盘,不是非常详细,但问题大部分都在这里了。

一面

3.2 电话面试1h

自我介绍

项目

科研,背景,怎么实现的

深拷贝与浅拷贝

析构函数为什么是虚的

三次握手交换了什么(seq/ack+发送窗口),发送窗口是干什么的,解释滑动窗口协议

信号和信号量的区别

IO协议栈是什么(不懂,能不能给点解释),面试官举例说打开一个文件,从键盘输入再保存,这段时间发生了什么。我回答说键盘是外设,产生IO中断,CPU读取放入内存,再从内存放入磁盘。面试官追问读取数据怎么从内存写入磁盘,我扯了一些页面置换什么的(答非所问),中间我还扯到了L1 L2 L3缓存,被追问里面有什么,我不是特别了解,只说了有一些寄存器什么的。

32位系统,地址空间是多大(2^32=4GB)

物理地址空间和虚拟地址空间怎么转换(扯了一些基本定义,最后坦言具体怎么转换的不知道,答案应该是MMU)

内存有哪些技术(开放回答,交换技术与虚拟内存,重点讲虚拟内存、页面页框页表、缓存淘汰的策略一般是LRU)

算法题:以单词为最小单位翻转字符串,先整体翻转,然后遍历,碰到空格时把前面一小段翻转(单词翻转)

算法题:10万个数字找重复数据,我回答了哈希表、位图、布隆过滤器、排序

还有什么想问,为了表现一下自己,问了一下对方产品怎么做的一致性,还问了有没有借鉴PAXOS与RAFT算法,对方给我讲了挺多关于存储的知识

总结:没问网络并发与数据库,除了操作系统的几个问题,其他都答的挺好的,看来要多看看操作系统的细节了,最后的提问交流还挺愉快的

师姐反馈,过了一面,等二面吧。

二面

3.6 牛客网1h

个人介绍

项目和比赛问得挺仔细的

epoll的工作模式,优缺点

select怎么做的,缺点,内存开销

重载怎么实现的(名字翻译)

虚函数

管道分为哪几种,匿名管道怎么实现的(fork,拷贝父进程地址空间,共享同一个管道socket,所以可以匿名通信)

手撕代码:二叉树的(最大)宽度。牛客网面试房间,写完之后要调用main函数输出的,代码能work。

当天师姐反馈,过了二面,三面是大boss,很严肃,可能会很有压力,做好心理准备(事实证明,做了心理准备也没用。。)

三面(压力面)

3.10 腾讯会议1h

怼项目,优化手段都没问、调度器也没问,就问为什么会有死锁,我回答说调度规则决定的,能否试探加锁去解决死锁,我说不行,因为车辆不准只走一部分,如果它没法走满速度,那它会等待,这样有可能会循环等待,举了个四方形环路的例子,这个例子给出来后才打消了面试官的疑虑,庆幸当时能够在巨大的压力下构建出一个死锁场景。

问SDN项目遇到的困难,我说用户与控制器通信的方式弄了很久才知道,面试官认为这是一个很基础的功能,任何SDN控制器都要提供,说我技术选型有问题,我回答最开始没想到需要这个功能,这个框架已经搭建好了,所以就没想其他SDN控制器,这需要自己手动实现,最后是通过NAT技术转换实现的用户与控制器通信的(这块有点减分,说我技术选型有问题,语气略生硬)。SDN项目里的时延检测模块,为何精度要好(SDN环境下,交换机没有能力处理包头,所以要上交给控制器,所以得自己实现检测方法),时间是怎么得到的(我回答说Python的time库,调用time.time()即可得到当前时间),追问time函数返回值的精度是多少(我被怼的有点慌了,这里也忘记具体精度了,被狠狠地怼了一番)

Linux的定时精度,怎么往前走的(晶振,产生一个滴答,定时器,如时间轮,这里应该算是回答上来了)

进程间通信,要发送10GB数据,要怎么做,首先说了管道,再socket,然后用socket距离说了流程:因为socket有缓冲区,所以可以先分段,然后再一边写,一边读。然后后问我IPC哪个方式最快,回答共享内存,话题转移到共享内存的实现了,我说mmap,问我有没有实际写过,我说没有,但我知道一些应用场景。

mmap有哪些应用(malloc分配内存,以及epoll往内核注册事件,这里回答上来了)

集合,里面每个数字都有两个,只有一个数字只有一个(我回答异或,问我有没有其他的,我说哈希表,然后详细说了两种方法的具体实现以及时空复杂度)

智力题,两种药丸A和B,外表完全一样,也没法通过气味甄别,小明有两颗A也有两颗B,但把它们弄混了,小明每次需要服用半颗A半颗B,怎么办(四等分切割,回答出来了)

总结:面试官给我的压力很大,说话语速很快,整个面试处于一种很紧张的状态,被怼项目的时候差点想放弃,但还是坚持面完了,可以说,这次面试极大地提高了我的承压能力。

面完问师姐,暂时还没消息,我以为凉凉了,当天晚上告诉我过了,激动万分。

但是面试状态一直是复试,中间拜托师姐催催,但是还是没反应,直到3.19,观望状态突然变为了初试,我慌了,赶紧问师姐,师姐问了HR,说两种可能:要么凉、要么换组了。当时万念俱灰,非常沮丧。

3.20状态又变为了复试,我懵了,晚上状态直接变为了HR面试,开心极了。

HR面

3.27 中午收到下午三点HR面试邀约的邮件,于是打算小憩一会,在睡梦中突然接到一个来自杭州的电话,阿里四面来了!好不容易面完,挂完电话的一分钟之后,广东电话就来了。

3.27 40min 本来约好电话面试,但是由于通话不清晰,改为了在腾讯会议不开视频的通话面试,以下A是本人

看你的比赛经历比较丰富,你是怎么看比赛的呢

A:因为在校学生参与实际大型项目的机会比较少,比赛是个很好的选择,能锻炼编程能力,也能锻炼解决问题、分析问题的能力

那为什么不来实习,而去比赛呢

A:腾讯要求比较高,为了打好基础,提高自己,所以我选择了打比赛,而且当时也没系统地复习过后台开发相关的知识,所以还是继续学习,参加比赛,提高自己

说说华为比赛

A:巴拉巴拉

比赛的分工是怎么样的呢

A:我是队长兼主程,队友辅助巴拉巴拉

华为比赛过程怎么样的,有遇到什么技术之外的难题吗

A:巴拉巴拉(团队合作)

嗯。看得出来这个团队合作对你来说是难忘的记忆

在长达两三年的科研项目中获得的最大收获

A:思维模式,发现问题-分析问题-解决问题,巴拉巴拉

(好像很认同这个思维模式)你在什么时候发现自己掌握了这个思维模式呢

A:直接举了华为软件精英挑战赛的例子,从分析题目,到提出问题,用优化手段解决问题,再到碰到技术难题,再集中攻关,最后收获成果,这个成就感是很强的,巴拉巴拉

你没有互联网大厂实习经历,如何理解互联网后台岗位

A:虽然没有实习,但是有很多了解,通过前面几轮技术面,我相信我的后台知识储备也是过关的,我也非常想进腾讯互联网公司,互联网公司主要是做产品与服务,像腾讯这种大体量的公司,产品要服务于万千用户,那为了提供更加优质的产品与服务,就需要技术人员的分工合作,前端后台等等,后台的方向有很多,数据库、服务器,我相信腾讯肯定用的是最好的硬件资源,但再好的设备也要交到人的手上才能发挥优势,后台就是做这样的事,我们要做的就是最大化利用硬件资源,为产品与服务提供基础保障等等,巴拉巴拉

你讲的挺好的,很有主持人范,我都被你带进去了

A:我以前做过主持人,所以说话这方面还算不错

实习时间

A:三个月没问题的巴拉巴拉

你有什么问题呢

A:大概什么时候有结果

几个小时后去官网查询状态即可,如果是已完成,就等offer审批,审批需要两三天,大概下个星期会有结果

A:我会和我的内推师姐在同一个部门吗

(查了一下电脑,发现我的面试官也是同一个部门)可能会

A:我觉得如果有很熟的直系师姐带我的话,我会成长得更快

不用担心,我们会安排导师,都很nice,而且我相信你的沟通能力,肯定可以可以成长得很快的。

(打算结束时)最近有没有面其他公司?

A:投了一些简历(因为差不多要结束了,我当时脑子没转过来,忘记说“我最想去的还是腾讯”这句话了!)

总结:刚面完阿里四面,不仅要手撕代码,还问了很多东西,因为我说了三点要结束,所以面试官语速很快,我觉得我发挥得不算太好。在听腾讯HR小姐姐说话的时候,还偶尔还有点走神,思绪还没有完全从半个小时前的一些问题中出来。所幸HR小姐姐很温柔,说话轻声细语,很快我也冷静了下来,开始发挥出我应该有的水平。从3.2一面,到3.6二面,再到亚历山大的3.10三面,以为自己在总监的连环炮下要凉了,但内推师姐说我过了,但是简历一直没更新,3.19,我的状态变为了初试,当时心灰意冷,师姐问了HR,说要么凉,要么转组,但3.20下午又变为了复试,感觉峰回路转,晚上又变为了HR面试,我心情激动,一直等啊等,终于在3.27中午接收到了面试邀约,许愿offer!

4.1 17点,在健身的时候来了个电话,广东深圳,座机号码,oc来啦,两个小时后收到了录用函,感谢腾讯爸爸收留。

更多模拟面试

全部评论

(11) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

热门推荐