首页 » 软件开发 » 腾讯C++后台开发实习面经(已拿offer)(腾讯巴拉师姐问了面试)

腾讯C++后台开发实习面经(已拿offer)(腾讯巴拉师姐问了面试)

admin 2024-07-24 19:33:56 0

扫一扫用手机浏览

文章目录 [+]

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

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

一面

腾讯C++后台开发实习面经(已拿offer)(腾讯巴拉师姐问了面试) 软件开发
(图片来自网络侵删)

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来啦,两个小时后收到了录用函,感谢腾讯爸爸收留。

腾讯腾讯视频(PCG)

一面(3小时48分钟):

你没看错,三个小时,很多记不住了,问的太多太多了,嗓子都哑了

主要是技术栈不太一样,也是不放过我

1、代码测试 三道代码题 ,给90分钟,不过很快就写完了,不允许使用任何库函数和自带的数据结构

(1) 找出第100大的数

(2) 字符串复制函数

(3) 10进制数字转成64进制数,进制符包括0-9 A-Z a-z 和#@

问了快排,递归非递归的实现

2、socket编程,原理

3、time wait 都设置成0 会怎样?

4、socket如何断开链接? tcp挥手

5、java如何编译的,具体细节

6、linux问了很多,我不太会,记不住了,这块就问了挺久

7、谈了谈项目,具体用到的地方,谈了很多,消息队列,实现机制,如何保证可用?redis原理 zookeeper原理,集群等等

这块问的太深了,崩了,mysql也问了比如分库分表,如何解决数据重复

8、进程如何划分内存

9、浏览器抓包,解释head中的每部分的意思

10、get post什么区别?

11、cookie干嘛用

12、访问百度,对方用负载均衡,大概经过的过程

13、进程间的通信

14、问了几个问题我没记住,应该是编译原理里的,还问我是不是没有学过编译原理我说是的

15、对http发送出的数据包,是在网卡中解析还是在内存中解析

16、java的数据结构

17、redis的zset的底层实现

18、100亿的qq号,但是有重复,个数大概就25亿个,剩下的都重复,如何找出它们重复的个数或者找到哪些是重复的,只能在一台机器上操作且要在内存中

19、进程与线程的关系(估计是看我Linux太菜,还是用java 的 没啥问的了)

20、还有几个真的记不住了。

21、技术栈是c++ 和 go,问能接受不,指定回答能

22、java中的多态如何实现的,为什么就可以多态了呢,编译的时候有什么不同,为什么要重写方法呢?

23、mysql的引擎区别

24、mysql的索引 b+树 红黑树

25、红黑树的特点

26、mysql事务

27、mysql可重复读的mvcc 如果多个线程同时修改一行,那最后提交的时候结果是什么?

28、mysql数据了过亿,如果快速查找和优化?我这里说的索引和分库分表,分库分表就有展开问,问跪了

29、linux驱动

一些记不住了尽力了

------------------------------------

以为凉了结果没过几小时变成复试了,晚上九点多在做网易的测评,没做完就又来电话了,是pcg的二面

二面(46分钟)

1、项目,这块我白话挺久,阿里hr面的时候hr姐姐给我的建议,怎么回答项目,我好好整理了一番

2、问我项目的技术怎么容灾,有一顿白话

3、用户态和内核态,切换会出现什么问题

4、epoll

5、进程间如何通信

6、c++编译的过程大概是什么?

7、java中的hashMap

8、b+树 红黑树 实现 和复杂度

9、好像还有两个问题 ,记不起来了

最后欢迎关注我的公众号:互联网校招面经。
每天一篇高质量互联网校招面经分享!
每月定期总结归纳!
还有电子书福利赠送!

标签:

相关文章

语言中的借用,文化交融的桥梁

自古以来,人类社会的交流与发展离不开语言的传播。在漫长的历史长河中,各民族、各地区之间的文化相互碰撞、交融,产生了许多独特的语言现...

软件开发 2025-01-01 阅读1 评论0

机顶盒协议,守护数字生活的新卫士

随着科技的飞速发展,数字家庭逐渐走进千家万户。在这个时代,机顶盒成为了连接我们与丰富多彩的数字世界的重要桥梁。而机顶盒协议,作为保...

软件开发 2025-01-01 阅读1 评论0

语言基础在现代社会的重要性及方法步骤

语言是人类沟通的桥梁,是社会发展的基础。语言基础作为语言学习的基石,对于个人、社会乃至国家的发展具有重要意义。本文将从语言基础在现...

软件开发 2025-01-01 阅读2 评论0

粤语电影,传承文化,点亮时代之光

粤语电影,作为中国电影产业的一朵奇葩,以其独特的地域特色、丰富的文化内涵和鲜明的艺术风格,赢得了广大观众的喜爱。本文将从粤语电影的...

软件开发 2025-01-01 阅读3 评论0

苹果游戏语言,塑造未来娱乐体验的基石

随着科技的飞速发展,游戏产业逐渐成为全球娱乐市场的重要支柱。在我国,游戏产业更是蓬勃发展,吸引了无数玩家和投资者的目光。而在这其中...

软件开发 2025-01-01 阅读1 评论0