【前言】

不知道星球里有没有小伙伴比我更晚找实习然后更晚拿offer的,我大概是四月初开始准备投实习,然后四月三十接到了字节的面试邀请,面试了大概三个周通过。很明显是要比别人晚了非常非常多,这里给星球中小伙伴的建议就是能早尽量早,一般找暑期都是二月三月就开始了,我的话还是有点慢热了。

这里感谢卡尔哥,四月中旬找卡尔哥看了一次简历,卡尔哥对我的简历表示了肯定在当时算是给我打了一剂强心针,然后去投了字节,最后也算是成功如愿进入大厂。

【个人情况】

本硕211,24届毕业生,非科班通信专业,现在研一,无实习经历,有一点点硬件和人工智能的竞赛经历,去年八月份开始准备的算法题,到面试前题量六百出头,刷题中间偶尔准备一下计算机基础以及项目,计算机网络的话是一遍《网络是怎么连接的》、一遍《计算机网络》(谢希仁的那个,我本科的教材)还看了小林的图解网络,操作系统主要看的就是小林的图解系列外加一些博客,数据库主要看的是《MySql必知必会》以及《MySql45讲》,C++看了《C++ Primer》、《Effective C++》、《明解C++》(这本书不太建议,过于基础只适合入门),项目做的C++人手一个的WebServer和一个自己本科的一个C和C++混编的硬件项目。当时准备还是按照后端准备的,但确实是投的太晚了,没什么坑位了,最后选择了客户端,这里还是要夸字节的效率真的高,从通电话到拿到录用通知大概就用了三个周。

下面就是面经的正式部分,我觉得答得不好的地方会在题目下面把我当时的思路写出来,欢迎小伙伴们一起讨论呀~

【一面】(1h6min)

  1. 自我介绍
  2. 项目介绍
  3. Web服务器里怎么设计的IO复用
  4. 是否有做压测
  5. 请求是同时请求还是分开的
  6. 你觉得现在一般大厂使用的支持百万千万并发的服务器与你这个项目是一个概念吗
  7. 有没有了解过Nginx,Nginx里使用的连接模式是怎样的
  8. 项目里用了线程池,线程池怎么建立起来的,为什么要用线程池
  9. 那你从请求队列里取请求那不还是一个连接对应一个线程吗?
  10. 请求队列中请求的插入与取出的过程
  11. 如果请求量非常大,那从请求队列里取对于后面的请求是不是会有延迟
  12. 答得会有影响,但自己的项目里由于业务的读写内容不高所以不会有(给自己挖坑了,说自己的没有,面试官马上就开始设计场景了,无缝切换)