腾讯CSIG阿里(蚂蚁金服,支付宝,搜索引擎)网易互娱字节跳动面经

Posted 遥远的歌s

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了腾讯CSIG阿里(蚂蚁金服,支付宝,搜索引擎)网易互娱字节跳动面经相关的知识,希望对你有一定的参考价值。

说在前面的话

本人之前有面过腾讯天美工作室,奈何凉凉,有需要的朋友给传送门2021腾讯互娱天美工作室一面凉经
后来又被腾讯CSIG捞了,可惜挂在了二面上,期间有阿里三个部门的面试,也都凉凉(没办法,自己太菜了),后来面试了网易互娱,一面也挂,现如今面试字节跳动,到了HR面,也就打算把之前的面试做一个总结,来激励自己。

腾讯CSIG

一面

  1. 自我介绍
  2. 项目经历,问我数据如何处理,前后端交互数据格式,服务器如何实现的等(这里问的不深)
  3. 了解归并排序和插入排序吗?我就详细的说了这两种排序的区别和细节(很意外,没有手撕)
  4. C++11新特性中lamda表达式有了解吗,捕捉方式有了解吗?balabala…
  5. 虚函数的实现机制可以简单说一下吗?
  6. 多态可以介绍下吗?
  7. 操作系统有接触过哪些?答:LINUX,windows
  8. 进程,线程区别说一下
  9. 进程间通信方式简单介绍一下?
  10. 为什么共享内存最快?答:逻辑地址和物理地址的映射
  11. IO复用有了解吗?具体谈谈select和epoll。(这个正中下怀,和面试官侃侃而谈)
  12. LINUX中查看进程命令?top
  13. LINUX中查看当前CPU内存占用率的命令?这个真不会。
    反问:
  14. 面试官您觉得我今天面试过程中有哪些不足?
    面试官:你的C++基础可以,但是LINUX可能掌握的不是很好,下来可以继续学习。
  15. 咱门部门的工作氛围如何?
    面试官:工作氛围很好,大家都可以很好的融入团队

第二天发现一面过了,下午收到HR小姐姐约二面通知,定在下周二早上。

二面
这里我承认是我太菜了,问的全是底层细节问题,是我没准备好,所以挂掉了。

  1. 自我介绍
  2. 为什么选择CSIG实习?啊这,我是被捞的,我能怎么办…只能使劲舔…
  3. 问你网络知识吧,TCP,UDP了解吗?现在有两台机器,具体说说TCP和UDP两种写一下通信全过程。
  4. 两台机器A,B,如果B机器突然宕机了,和B机器上的某个进程挂掉了,A分别会有什么反应?这个我说的实在TCP下的情况,回有计时器,和探测报文,紧接着问我不用TCP,用UDP怎么办,这个我没答上来。
  5. 同样两台机器A,B,B怎么知道A的地址?答:地址解析协议,和广播报文。追问:具体过程?
    我答的偏向路由器,于是又追问:那在同一局域网和不同局域网下的情况有分别是什么?我说回有默认网关发广播报文。又追问:路由器内部具体细节是什么?我答:路由向量算法?路由表的更新?(实在不会了)
  6. 还是两台机器A,B你刚才说了TCP的情况,那么如果两台机器发送UDP报文,B机器突然宕机了,和B机器上的某个进程挂掉了,A机器会怎么操作?答:可以在应用层实现某种应答机制。追问:具体细节讲讲?这个我真不会了,后来知道UDT协议。
  7. C++中STL下的内存管理是什么机制?(这个真忘了,没答上来)
  8. 咱门写道题吧:
    15分钟写一个hashmap类,要求:定义尽量完整,尽量安全,冲突处理方式要快,并且实现它的put方法。
    我内心:…
    15分钟硬着头皮写了一个很烂的hashmap类,put方法还没实现,我选择的还是线性探测法。
    反问
  9. 咱门部门具体业务是什么?
    面试官:这里是云产品部,我们主要负责研发。
    (面试官有些不耐烦,可能因为我太菜了吧,就没再问了)
    果然下午看流程变灰了,凉凉…

阿里巴巴蚂蚁金服

一面
电话面

  1. 自我介绍
  2. 项目细节,实现方式,我负责的模块,具体业务处理逻辑等问题
  3. C++中的vector和list的区别以及底层实现细节
  4. C++中map和unordered_map的区别以及底层实现细节?分别用红黑树和哈希表实现。
  5. map底层为什么用红黑树实现而不用AVL树实现?答:频繁的插入删除,对于AVL树的维护代价太高
  6. 网络编程有些过吗?具体是处理什么问题的?
  7. 高并发下如何保证服务器不崩溃?
  8. IO多路复用简单讲讲
  9. TCP三次握手和四次挥手过程讲一下
  10. C++中lamada表达式讲讲
  11. 进程间通信和线程间通信讲讲
  12. 进程和线程的区别讲讲

没有反问环节,两天后收到二面电话

二面

  1. 自我介绍
  2. 疯狂的问项目(问了半个小时)
  3. 期间问了C++11新特新还有IO多路复用
  4. 海量数据的查询处理

反问

  1. 这个主要是做研发的吗?
    面试官:是的,主要是C++服务器的研发
  2. 工作环境怎么样?
    面试官:工作氛围很好,不用担心刁难新人的情况

刚面完的5分钟,查看状态凉凉…内心是失落的…

阿里巴巴支付宝业务

一面
电话面

  1. 自我介绍
  2. 项目细节(我负责的模块详细介绍,逻辑处理介绍,json数据格式处理时遇到什么困难?怎么解决的,为什么使用json数据格式,有了解过其它的数据传输格式吗?)
  3. C++中vector和list的区别以及底层使用了什么数据结构
  4. 一个空类的大小是多少?如果增加了一个虚函数,大小是多少?
  5. 多态详细讲讲
  6. 继承是为了什么?
  7. 让你设计LRU算法,你会怎么实现?
  8. TCP三次握手详细讲一下,每个标志位也讲一下
  9. 进程线程区别?
  10. 分布式讲解一下?如何处理一个内存空间放不下的文件?
  11. 数据库中的索引简单介绍一下。
  12. 数据库的事务讲一下,以及它的特性?
  13. C++中右值,右值引用讲一下。
  14. LINUX中查看当前进程的命令,查看CPU状态的命令,查看内存空间使用情况的命令。
  15. 设计模式有了解哪些?单例模式

反问

  1. 如果我有幸能进贵公司实习,我需要在哪些方面的知识进行加强?
    面试官:C++基础可以,算法也可以,但是数据库和LINUX方面还有待加强,因为这边是支付宝业务,可能对数据库要求高一些,你可以下取把数据库的底层的一些机制了解了解。

依旧是5分钟后官网查看状态:已回绝…

阿里巴巴搜索引擎业务(夸克)

一面
电话面

  1. 自我介绍
  2. 项目细扣…各个模块疯狂的扣
  3. C++多态,虚函数,介绍一下
  4. C++11内存如何管理可以防止内存泄露?答:智能指针
  5. 智能指针有哪些,简单说说。
  6. shared_ptr设计的底层细节了解吗?它是线程安全的吗?回答:是,因为有锁机制。追问:它里面的锁机制怎么实现?
  7. 循环引用了解吗?如何避免循环引用?答:weak_ptr 追问:哪里改成weak_ptr?答:结点中的前驱和后继指针。
  8. 数据库用的多吗?一般用哪个数据库?
  9. 数据库索引了解吗?简单说说。答:B+树,哈希表
  10. 索引必须要建立吗?有什么危害?答:不一定,他会占用额外空间
  11. 不同数据结构的索引应用的场景简单说说。
  12. 数据库事务了解吗,简单说说。
  13. 数据库中有哪些方法保证了数据安全?
  14. 快排讲讲,有什么优化手段?答:把递归变为非递归,三数取中,加入插入排序。追问:那如果一组数据中某个数据重复高达百分之四十,上述的优化方法一定可行吗?答:应该不可以…这个没想到怎么回答。继续追问:那如果重复率高达百分之八十,你有什么优化的想法?答:多路排序,最后归并。面试官:这有点分布式的雏形,可能并不是我想要的,我们跳过这个话题。
  15. 操作系统中进程,线程的区别。
  16. 线程如何做到共享同一个进程的资源?

反问

  1. 对于这次面试,您觉得我哪里还有待加强?
    面试官:因为是做搜索的,对数据库要求还是比较高的,你的C++和LINUX基础可以,但是数据库还是得加强一些。

依旧是五分钟后去官网查看:已回绝…内心拔凉拔凉的…

网易互娱N计划暑期游戏开发实习

一面
牛客视频面

  1. 自我介绍
  2. 半个小时算法题:leetcode会员题:设计一个系统日志类,要求实现get和put方法。
    可能思考时间比较久,时间到了还没写完,面试官问了我思路,大概了解后就开始后续的面试
  3. C++继承简单讲讲
  4. C++虚函数存在是起什么作用?答:正要说多态,面试官打断,如果你可以用代码直观的展示,我觉得会更好。于是我写了一个多态。追问:如果父类virtual关键字去掉,还是多态吗?继续追问:多态需要满足什么条件?继续追问:多态的实现原理可以讲讲吗?继续追问:在构成多态情况下,父类子类各添加一个int变量,那么sizeof这两个类的大小各是多少?本质是内存对齐原则。
  5. C++STL有了解吗?可以简单说说吗?
  6. C++强制类型转换有哪些?什么场景下使用?
  7. TCP和UDP的区别说说
  8. TCP三次握手讲一下
  9. TCP的四次挥手中,为什么要存在TIME_WAIT状态?
  10. 数据库索引简单介绍一下?索引失效的场景说说?
  11. 我们再来写道题:青蛙跳台问题:一次只能跳一个或者2各台阶,求跳到n台阶的所有方法。简单的动态规划。
    面试官看我瞬间写完,又给我出了一个题:金条划分费用最下问题:给你一个数组,分别是你要划分成的目标金条重量,每一次划分你需要支付划分成这两块的重量和的费用,求如何划分使得费用最少?
    例:arr = 10,20,30
    先划分成30,30,支付60,再把30划分10,20,支付30,总金额90。
    这个题其实就是哈夫曼树的题,用大根堆实现。敲代码中面试官说:他还要面试下一个同学,时间不太够了,你说一下思路吧。于是我把思路说完,也没有反问环节就结束了。

五天后,GG…

字节跳动测试开发实习

一面
牛客视频面(一面是个小姐姐,有些开心)

  1. 自我介绍
  2. 项目细节大致问了问
  3. C++多态讲一下
  4. 进程线程的区别
  5. http协议中GET和POST方法区别 (前端知识不太了解,这个没答好)
  6. 介绍一下TCP,你觉得我们现在面试用的是什么协议?答:UDP,因为要求实时性高
  7. 数据库索引简单讲讲
  8. 算法题:leetcode买卖股票的最大收益:这个就是一个简单的dp,写出来了。
  9. 对于你写的算法,设计几个测试用例

反问

  1. 您觉得我哪些点需要加强?
    面试官:整体都很好,对于前端的一些知识还需要加强。

面完后HR小姐姐给我说一面过了,面试官对我整体面屏挺高的,哈哈哈,就是http协议的一些知识需要加强,下去可以多看看这些点。又月了二面时间,4月13日下午3点。

二面
视频面(是个年轻的小哥哥,小哥哥迟到了,我联系HR,HR说他可能再找场地,大约过了7分钟,面试官上线,他说他不是在找场地,他是忘了…)

  1. 自我介绍
  2. 项目中我所负责的模块的一些细节问题
  3. 你的自我介绍中提到热爱运动,说说运动能给你带来什么?
  4. 你说你担任过班干部,那如果你在上课中,导员叫你有事,你会怎么去解决这个冲突?
  5. C++11特性了解哪些?
  6. 浏览器中输入一个url到页面显示的所有过程
  7. OSI七层模型有哪些?五层模型有哪些?
  8. 应用层有哪些协议?http,https,scmp等
  9. http和https有什么区别?答:安全度,申请证书,对称加密等方面展开而谈
  10. 数据库索引了解吗?简单说说索引。
  11. 索引一定要有吗?哪些情况下索引回收失效?
  12. 算法题:判断两个链表是否有交点?我写的O(N)实现
  13. 针对你的算法, 会存在哪些隐患?(实质就是你会怎么设计测试用例来检查你的算法)
  14. 这边看你投的是北京的,有兴趣来上海工作吗?答:非常有兴趣 (毕竟上海有亲戚)

这时面试官来了句:我这边给你过!!!
后面说上海对我的提升会更好,技术大牛带你什么的…

结束后HR小姐姐说,二面通过,非常好。
我:但是还要三面BOSS面
HR:恭喜你,下轮直接HR面,那个面试官是上海的,他可能看上你了,hhhhh。
我:好呢(内心实则激动万分)

今天收到上海那边HR面的预约邮件,约到了4月15日下午6点半。一定要过呀!!!!

PS:经过这段时间的投递和复习,真的能够很好的发现自身的不足,一定要及时学习。最后祝大家都可以取得一个不错的offer!!

以上是关于腾讯CSIG阿里(蚂蚁金服,支付宝,搜索引擎)网易互娱字节跳动面经的主要内容,如果未能解决你的问题,请参考以下文章

财经 | 阿里巴巴蚂蚁金服:能成SWIFT的竞争对手?

零距离观察蚂蚁+阿里中的大规模机器学习框架

前端支付宝蚂蚁森林怎么开发的

模块化与解耦式开发在蚂蚁金服 mPaaS 深度实践探讨

面试复盘-生活不就是起起落落落落落吗?

面试复盘-生活不就是起起落落落落落吗?