可以明显感觉到,最近每的心态和压力都异常大。既要起早贪黑没日没夜弥补自己基础知识,又看着一个接一个同学收到offer,导致自己每天都处在自我怀疑的纠结状态中。至少到目前为止,这是我20年来最艰难的时期,比以往任何小打小闹的挫折都要正式。这个大三,我跨过了无数槛,走出了一个又一个的舒适区,我不知道最终结果如何,但这就是我最切身难忘的时期,不得不面对的现实。无所谓结果如何,吸取到教训并可以快速及时改正,这段时间就没白折腾。

​ 暑实岗位随便挑了一个(?)直接投的,技术栈不匹配那是血的教训啊orz…
​ 我自认为是一个讲究高效率的人,恰好腾讯的效率奇高无比,所以一面结束后发了通知当晚九点直接二面,然后想都没想直接决定当天解决。
​ 其实复盘再看的话这不是一个科学的做法,让你加班面试一个five你会抱着好心情去面?严格来说并不难,但是一天对线两次确实挺消耗体力的,况且到二面结尾的时候面试官直接点破了“我赶时间”…也算一个教训了。这次准备的并不充分,因此希望大家准备好这些问题再去投简历:

  1. 明确好投递岗位的具体工作内容及其相关的技术栈(比如DB不熟的话不要去运维这种反而对DB要求高的岗位

  2. 核心能力:数据结构+算法,时间空间复杂度也要会分析

  3. 不要只会准备算法,语言特性+计网+OS(包括linux使用与原理)+数据库原理,底层原理知道越细越好,这些基础不过关完全没机会。

  4. 对于实习生来说,项目不是必须的,但是是绝对的加分项,项目与岗位工作内容的匹配关系越高越有优势

  5. 有事没事别乱说你熟悉C++,不投是最好的…


[腾讯CSIG]运营开发 · 一面(2021-03-11 —— 31min)

  1. (凑数的)项目介绍(技术栈不匹配,也就看个乐)
  2. (数据结构)解释一下二叉树、AVL树、B+树
  3. (数据结构)解释一下哈希表、如何解决哈希冲突
  4. (数据结构)堆和栈的区别
  5. (计算机网络)HTTP的长连接和短连接
  6. (计算机网络)TCP三次握手和四次挥手
  7. (计算机网络)GET和POST的区别
  8. (计算机网络)网络拥塞如何避免
  9. (计算机网络)输入一段URL发生了什么
  10. (OS)进程间的通信机制,各自的优缺点
  11. (OS)操作系统中的调度算法有哪些
  12. (数据库)数据库的事务特性ACID(lz只知道个InnoDB)
  13. (系统设计)如何设计一个秒杀系统?(这里只讲述一下思路就好)
  14. (分布式系统?)解释一下负载均衡、削峰填谷(不会,没记错的话我直接过的)
  15. (凑数的)职业规划
  16. (凑数的)学生工作经历

[腾讯CSIG]运营开发 · 二面(2021-03-11 —— 20min快速凉)

  1. (C++语言特性)常用的STL及其底层实现(不会,直接跳过)
  2. (C++语言特性)C++继承是怎么一回事
  3. (C++语言特性)解释一下C++多态
  4. (算法)列举常用的排序算法
  5. (算法-QuickSort)如何实现快排
  6. (算法-TopK)给定10w个数,找到最大的10个数,如何实现,给出时间复杂度
  7. (算法)哈希冲突如何解决
  8. (OS)Linux常用的命令有哪些
  9. (OS)Linux的文件系统如何实现
  10. (OS)解释一下多进程和多线程
  11. (计算机网络)TCP/UDP的区别
  12. (计算机网络)TCP的滑动窗口机制
  13. (数据库)对数据库了解到哪些程度(lz只知道个InnoDB,直接跳过)
  14. (数据库)知道触发器的概念吗(不会)
  15. (网络编程)解释一下select和epoll(嘴欠了…)

[腾讯PCG]运营开发 · 一面(2021-03-18——20min快速凉 )

其实每次事后复盘发现真的都不难orz…相比之下,CSIG的一面二面都是偏向于八股文的,只是一星期前的自己还不够成熟。这一周补了不少底层的基础,但是面试官问的表层orz…又是一次教训,既然准备过别人准备过的,所有坑都得自己踩。今天状态太差了

  1. 自我介绍
  2. (计算机网络)URL的解析过程
  3. (计算机网络)追问:你刚才说到DNS缓存,DNS有哪些不同级别的缓存,分别是什么?(嘴欠,说解析的时候上面提到过)
  4. (计算机网络)HTTP状态码有哪些?解释一下302、304、502、503等
  5. (计算机网络)HTTP如何保存用户状态
  6. (计算机网络)TCP四次挥手
  7. (计算机网络)TCP如何保证传输的可靠性
  8. (计算机网络)TCP的滑动窗口机制
  9. (Linux)进程存在哪些状态
  10. (Linux)常用的Linux指令:查看CPU使用状态、查看进程、查看网络使用状态、查看内存使用状态(我都是随用随查= =)
  11. (语言特性)Python的垃圾回收机制听说过吗?(没听过,知道java有,不知道Python还有这玩意orz…,顺利GG)

—复盘

  • 我在简历上写了:“熟悉C++、Python、Linux环境下的开发工作”,然后按照这些点疯狂追问,没把握的别写(不过我不改了,坑该填就得填)

  • 背八股文有必要,但是不要奔着热点问题背起来没完,大家都知道这些热点问题,回答过程中出现的任何一处问题都会被细挖

  • 控制好自己的语言逻辑,今天表现比前几天差很多,不自信,说话漏洞百出,语序不条理

  • 联系一下实际应用(确实,感谢@EdVince)


[阿里云] C++开发 · 一面(2021-03-24——25min)

临场发挥就拉了。好!又补了一波基础(说直白点还是挂了orz…)。面试官他们这边的组主要写Java多一点(下边这些我再次都没看过orz…面着面着没感觉了,考虑的还是不太充分,近期需要把以前那些基础知识重新系统性地理一遍。

  1. 自我介绍

  2. (算法)100亿个随机数据,内存很小,如何找到中位数?

  3. (算法)介绍一下DFS和BFS,分别使用哪些数据结构?

  4. (语言特性)define和enum的联系和区别?

  5. (语言特性)struct和class分别在什么情况下应用?

  6. (语言特性)sizeof和strlen有什么区别和联系?

  7. (思考)两个人轮流掷硬币,掷出正面的一方获胜,先掷一方的获胜概率有多大?

  8. (语言特性)static函数和普通函数有什么联系和区别?

  9. (凑数的)介绍一下最近看过的技术书

    · 挖坑:介绍一下WebRTC是个啥(后面慢慢补)

  10. (语言特性)对比一下Go和C++,Go的优势在哪?分别从多个维度评价一下


[腾讯CSIG] 后台开发 · 一面(2021-04-03——48min)

这个面试官比较和蔼,感觉他一直在试图捞我,答不上来的也一直引导,能过还是很意外的吧orz…

  1. 自我介绍
  2. 简单挖了一下项目
  3. (计算机网络)TCP和UDP的区别
  4. (计算机网络)如何实现一个可靠的UDP
  5. (计算机网络)如果设计一个WebServer,如何去实现(太宏观了,一开始没思路,下面引导了一下)
  6. (计算机网络)地址栏输入URL的解析过程
  7. (计算机网络)TCP的四次挥手
  8. (计算机网络)TCP的拥塞控制机制
  9. (计算机网络)HTTP报文的结构与Header内容
  10. (OS)进程和线程的区别?多进程和多线程的适用场景
  11. (OS)协程了解过吗(线程跟进程和协程跟线程类比一下)
  12. (数据库)数据库的事务特性
  13. (数据库)隔离性通过什么实现的
  14. (数据库)MVCC机制的原理
  15. (数据库)数据库的隔离级别,分别解决和未解决了哪些问题,默认使用哪种级别?
  16. (算法)QuickSort的实现原理和时空复杂度
  17. (智力题)有一种玻璃球,从100层高的楼的某一层开始,扔下去会碎。现在有两个玻璃球,最多扔多少次,可以确定这个“最小碎球层”(引导着优化了一下)
  18. (智力题)海量数据,查找其中某一条数据的查询方案

[腾讯CSIG]后台开发 · 二面 (2021-04-08——30min)

比较轻松流畅的一次,绝大部分时间在撕项目,体验算是最好的了。因为对自己的项目比较熟悉,所以让你进入状态之后,整个面试流程就没那么压抑了。

  1. 自我介绍
  2. 深挖项目(这块就花了将近20min,不过因人而异,不展开了)
  3. (计算机网络)HTTP和HTTPs的区别
  4. (Linux)Linux常用的指令
  5. (Web)Nginx了解过吗,简单介绍下
  6. (OS | Web)消息队列介绍一下(想了下他说的应该是RabbitMQ和Kafka之类的,我当IPC里的消息队列回答了)
  7. (智力题)海量随机数据,内存很小,如何找到他们的中位数?(感谢阿里那位面试官让我找了这个教训)
  8. (闲扯)老家是哪的
  9. (闲扯)实习地点在深圳,可以接受吗

[腾讯CSIG]后台开发 · 三面(2021-04-13——20min)

这次基本GG,讲道理我之前基础补的差不多了(起码常规题不出意外完全可以过),这次大概是总监面?(还是压力面啊…)。在我看来题目非常难非常怪,而且面试官语气也比较冲的样子,开局被震撼到,不过也一直有意无意地去引导往数据结构的思路去调整,不过他太吓人了我全程还是怂的不行orz。估计要故意筛人了,知道问题在哪了,成不成就这样咯~

  1. 自我介绍(时间短了点,面试官:就这?)
  2. (OS)进程和线程的区别
  3. (OS)线程有哪些资源
  4. (OS)进程间通信方式
  5. (OS)消息队列的优先级
  6. (OS)如果要往共享内存写入二叉树,如何写入,会遇到什么问题?
  7. (计算机网络)后台如何处理长短连接?分别适用于哪些场景?(感觉这个偏业务)
  8. (计算机网络)场景:在一个服务器上设置一个120s的短连接生存周期,现在是一个高并发场景,假如有120w个连接涌入,对于每一个连接请求,我们要检查它的请求状态,就要对这120w个连接重复遍历,这样的时间开销是很大的,如何有一个统一的优化方案?(热点连接缓存?我感觉他一直有意引导往哈希表的方向考虑,但是一直不确定orz…)
  9. (OS)什么是CPU的用户态和内核态?
  10. (OS)内核态在什么场景下会极大地增大时间开销?
  11. (语言特性)内存池有了解过吗
  12. (智力题)A文件10亿个数据,B文件10w个数据,内存很小,找出它们的交集,并给出最优时空复杂度(分治不是最优的噢)
  13. (闲扯)老家是哪的?(我这是被拉黑了嘛…)