本文系阿秀个人原创,禁止未通过允许二次转载或加工,望周知。
插入一条更新,看到很多人对文章时间产生疑问,这篇文章是我去年写的,是2021.09.16号发布的,并不是今年发生的事

这是原文链接
当然了,接下来也会分享一下今年的秋招经验总结,C++、Java、客户端、测开测试、算法等都会分享一些,其中既有学校不错的应届生,也有学历一般跟我一样是普通二三本出身的学弟学妹,我想多看看他们的总结也许会对你以后的校招求职或者计算机学习有所帮助。
对了,如果有想来字节跳动抖音部分工作的,欢迎私聊阿秀,阿秀目前在抖音平台组担任全栈研发工程师,主后端,偏前端!
你好,我是阿秀。
前几天跟一个学妹聊天惊讶的发现发现她是个名副其实的 offer 收割机,offer 又多含金量又高,拿到的还基本都是后端研发岗。
不得不说一句,在今年的秋招困难模式下,还能拿到这么多的后端研发岗 offer,而且人家还是非科班的,实属不易!
其实找我分享或者报喜的人有很多,但他们的共同特点有两个:除了 没我长得帅 之外,还有一个共同点,那就是 都在默默前行。
你可以把它理解为「卷」,也可以理解为「为自己想拥有的生活而去努力奋斗」。
不多说了,给大家分享一下她的经验,下文中的我代表学妹本妹:
大家好,应秀哥之邀,来分享一下自己这段时间的提前批、正式批的找工作情况,希望对后来者有所帮助!
以下内容是我今年秋招的一些心路历程,跟大家分享一下。

某非科班工科专业硕士在读,原专业太坑,找工作很难找,于是转行互联网行业。
去年年末刚接触 C++,一直在持续学习 C++,慢慢准备校招。
我的 C++ 启蒙书就是 《C++ Primer 5th》

C++ 启蒙书
个人投递情况:优先投递后端研发,有后端投后端,没后端投相关开发岗。
互联网校招面试需要准备的有:项目、算法题、八股文。
可以在力扣上刷题,我一开始是 按照分类刷 的,这样比较有计划,而且可以对比着看同类型的不同题目。
分类刷完一遍后,我就开始刷高频题,截至目前我在力扣总共刷了三百多题,里面有一小部分高频的我做了好几遍,应付一般的面试应该没有太大问题。
一般来说,面试的代码题不会太难,一般是简单或中等题,偶尔会有几个高频的hard题;笔试相对会难一点,比较重要的笔试之前可以刷刷题找回一下做题手感,让笔试更得心应手一点。
阿秀表示这是对的,一般来说面试的算法题都是容易、中等级别的,笔试的题都是中等、困难级别的。
顺便一提,我在面试中遇到过最多的题是回溯、链表、二叉树和二分查找,笔试中遇到过最多的题是 BFS 找最短路径。
八股文这块我主要就是看秀哥的文档,里面包括 C++、操作系统、计算机网络、数据库等等。
第一次看的时候确实很多地方不明白,所以我一般对一些重要的知识点还是会去网上搜资料,进一步 理解,从而加深记忆。
其实我记性很差,直到现在我也只能记住一小部分,那一小部分就是理解了之后记下来的。
如果大家记性比较好,可以尽量多记,如果记性跟我一样差,不妨找一些高频的记一记,深入挖掘一下,面试时候多说一点。
后来我面试了那么多次也发现,问来问去就那几个题目。
像 C++ 我被问的最最最多的就是多态的实现原理;计算机网络问的最多的就是 TCP 的可靠机制;操作系统问的最多的是进程线程的区别;MySQL 问的最多的是隔离级别;Redis 问的最多的是数据类型……
除此之外,我男朋友每天也会收集一些面经,我就直接拿来用了,每天看各种真实面经,我会在 ipad 上边看边写写画画

项目经验我觉得最好是能够去实习,如果因客观原因不能去实习,就自己准备。
除非你学历或其他条件比较优秀的话,只讲科研成果或许也可以(对于非计算机专业的研究生来说)。
我项目是自己做的,主要还是参考开源项目,因为我不能去实习,而且我也非计算机专业,老师只有硬件项目。
其实我准备的项目不难,但是我刚做的时候对 C++ 一窍不通,所以边学边做花了较长时间。
另外,我的项目其实跟互联网后端也没什么关系,主要还是往我科研方向去靠的。如果能有相关项目当然更好,如果没有也没关系。
因为我觉得对于一个没有实习的非科班应届生来说,很难接触到多么复杂多么契合的项目,所以项目难易程度和相关程度并没有那么那么重要(当然如果要冲击 SP 的除外)。
很多大厂面试官,其实更想看到的是你 在项目中有自己的思考,最好是有自己的一些 创新或优化的点。
这里要给师妹点赞!!!因为现在再回头去看自己的校招项目,觉得就是小孩儿过家家的玩具车,你在项目中做了什么并不是很重要,重要的是,你学到了什么 或者说 你想到了什么。
这里要说到,其实有时候大厂的面试会比小厂更简单一点,因为小厂更看重的是你是否有实际的项目经验,能否一来就做事,而大厂主要看你的思维能力。
最后,自己的项目自己一定要了如指掌,做好被面试官深挖的准备。
简历我是参考了秀哥的简历,也修修改改了好几次。
知识点那么多,如何引导面试官问你会的问题很重要。简历就起到了这个作用。
个人建议不要写的太笼统,尽量 把知识点列出来。这个知识点,可以是项目中的,也可以是专业技能中的(具体可以去看秀哥的简历)。
面试官其实很多时候不知道问什么,所以极大可能性会对着你的简历问。
比如我简历上写了 epoll,他就会问「epoll是什么」、「为什么用epoll」、「还有什么其他IO多路复用的方法?它们有什么区别」、「epoll 实现原理是什么」等等。
那么只要你把简历上写的内容都提前准备了,面试自然会觉得很顺利。
投递公司的顺序,我也参照了秀哥在他的校招群里跟我们说的,那就是先投小厂,再投中厂,最后再投自己想去的大厂。
一开始,我也投了一些小公司,想要积累经验。但是我发现,好多公司不是简历挂就是一面挂。
后来,我投了一些不太想去的中大厂,获得了一些面试机会,积累了一些面试经验。
其实从第一次面试,到最后一次面试,有一个很明显的感觉,就是我的 心理素质变好了。
前几次面试,每次面试官让我手撕算法题时,我都很紧张。明明题目不难,脑子里却一片空白。
后来面了几次,拿到一两个保底意向书之后,我就很明显地感觉面试不怎么紧张了,做题时可以让脑子转起来了。
这样也可以帮助我更好地发挥出实力,去冲击更理想的 offer。
这么说就是想告诉大家,除非你准备的真的真的很充分了,心理素质也很好,否则不要一上来就冲击自己最想去的公司。
可以先试试自己第十想去的公司,如果过了就去试第五想去的,这样逐步逼近自己心中的 Top3。
但是也不要面太多,因为面试真的很疲惫呀,万一还没试到你最想去的公司你就躺平了,就有点可惜了哈哈哈。
另外很重要的一点是,我建议还是 早下手为强,不要太过犹豫,总觉得自己题也没做好,八股文也没背熟,就迟迟不敢行动。
我觉得比这些更可怕的是 hc 没有了,那就更加束手无策了。如果真的没准备好的话,也可以再准备几个月,冲击春招。
此外,大家如果对 Base 地不是特别在意的话,可以尽量 避开高竞争地区。
其实上海的竞争一直比较大,可能是附近高校比较多。
如果觉得去哪里都可以的话,可以事先了解一下意向公司在哪里的 HC 比较多。
一般来说总部的 HC 会相对充裕一点,机会可能也大一点。
秋招是一场持久战,心态很重要。
其实很多时候,面试的难易程度,取决于面试官想不想要你。
而他想不想要你,又取决于多个因素,例如 HC 还够不够、项目匹配程度等等。
在八月份的时候,我几乎每天都有面试,很累,但也很充实!
忙碌的八月

我也碰到过让人生气的 KPI 面试,但是不必太放在心上。
一个好的面试官,如果问到一个难的问题你一时没有思路,应该会去引导你,让你逐步去思考,去挖掘你的潜力,而不是一上来就否定你,或在那边沉默或叹气。
如果遇到这种情况,不必在意,放平心态,继续努力就好了。
好的面试官就那么多,不好的多了去了,遇到几个也不奇怪,把这篇揭过去,下一页更精彩!
首先,对于校招来说,学历肯定是重要的,没有哪家公司会完全不看学历,只不过比重多少的问题。但是这不代表学历不占优势就没有机会了,双非上岸的例子比比皆是。
学历、获奖、论文、项目经验、大厂实习、绩点、基础扎实、善于思考等,任意一项都可能成为加分项,而每个公司都有自己看中的点,只要肯努力肯思考,机会就多多。
其次,我前前后后面试了大概有十几家公司了,我总结一下我面试过程中一些公司的特点,并不代表全部:
1、华为、阿里非常看重项目,我从头到尾几乎一直在问项目。另外容易被忽视的点:华为测评很重要。我碰到好多华为测评挂的同学,大家尽量在轻松愉悦的情况下去做的哈哈哈。其他公司测评挂人的比较少,但听说也有,所以都要认真对待呀。
2、字节基本上每一轮都是项目+八股文+做题的形式,而且基本就是照着我的简历问的。可能我也是比较幸运,看网上面经说字节很看重算法题。
3、拼多多笔试有点难,而且后两题很有可能会跟数学有关系。面试主要看面试官个人风格,一般前两轮比较重基础。
4、其他公司比如网易游戏、米哈游,或者其他公司的 C++ 岗位,对于 C++ 基础会挖掘的比较多,例如我碰到的关于 delete this 的思考、关于 dynamic_cast 的原理等等,这些对于不懂 C++ 的面试官,可能根本不会问,但是游戏厂或 C++ 岗就可能问到,可以针对性地准备。
5、最后,到了 HR 面,大家也不要掉以轻心,有些公司的 HR 面是很重要的。一些HR会问你个人的一些经历,来判断你的综合能力,比如与人沟通的能力、应对困难的能力等。
此外,HR 还会判断你去他们公司的意向是否强烈,我有时候太过耿直,实在说不出骗人的话,然后就挂了哈哈哈,希望大家引以为戒。
下面是我的面经
我面试的公司不少,就挑两个有代表性的吧,我主要分享一下商汤科技和字节跳动的面经
一面
项目
八股文
STL 中的容器了解哪些?
deque 和 vector 的内存分配情况是什么样的?
时间中断是什么?
做题
写一个生产者消费者模型
二面
项目
做题
一个无序数组,返回出现次数最多的 k 个元素
八股文
C++、操作系统、gdb
gdb 怎么打断点、查看所有线程、打印堆栈,怎么传入参数?
死锁怎么排查问题,怎么打印堆栈,那怎样查看某个线程的堆栈?
动态库和静态库,为什么要有这样的区分?
用户态和内核态的区别?为什么用户态的崩溃不会导致系统崩溃?什么情况下会系统崩溃?
C++ 有几种创建线程的方式、线程销毁的方式?
线程之间同步的方式?C++ 里面怎么创建一个信号量、条件变量,条件变量有哪些接口?
线程之间通信呢?
C++11 右值引用是什么?移动构造函数具体怎么实现的?
大小端是什么?什么时候用大端什么时候用小端?
三面
八股文
C++ 中重载和多态是什么样的关系?多态的实现原理?
代码设计题
一个函数要生成 0,1,2 要让生成 0 的概率是 10%,生成 1 的概率是 50%,生成 2 的概率是 40%。
项目
讲 C++ 项目,项目目的,最大的难点。
讲科研项目,看理解能力和表达能力。
一面
项目
介绍技术难点
epoll 的原理是什么
为什么用 epoll
讲一下零拷贝
做题
二叉树的序列化和反序列化
八股文
https 的加密认证的过程
redis 数据结构及其底层实现
二面
项目
八股文
多进程和多线程的区别?
TCP 的粘包问题?除了分隔符还有什么方法解决吗?
epoll 和 select 的区别?
epoll 中水平触发和边缘触发的区别?
零拷贝介绍一下
为什么 redis 里面,用单线程,还能这么快?
MySQL 中聚簇索引是什么?
线程之间通信的方式?进程之间通信的方式?
介绍一下几种排序算法的时间复杂度?什么是稳定性?
做题
字符串全排列
找递增递减序列的最大值 (就是 LeetCode162 的简化版)
三面
项目
三面的时候,明显感觉到问的比前两轮深
八股文
C++11 有哪些新特性?
智能指针有几种?unique_ptr 是什么,如何实现的?
STL 中存储键值对的容器有哪几种?map 和 unordered_map 有什么区别?
做题
实现 unordered_map,不能用 STL 中的容器,只能用数组和链表,实现插入、删除。
好了,以上就是学妹本妹的分享了!我是阿秀,我们下期再见。