感想和经验|互联网企业实习面试经验分享(谷歌微软hulu阿里腾讯字节美团百度等等)

这篇帖子主要以流水账的形式记录一下自己整个春招找实习的过程。注意,有些网址需要 网上学科 (倒过来看)才能打开。
另外,我根据网上各类面经博客以及自己的经验总结了面试八股文,不妨分享给大家作参考,点击CS 面试题目总结即可查看。
外企 Google

  1. Google 招聘网址点这里
  2. 微信公众号:Google 招聘包打听
  3. 面试类型:视频面试
  4. 面试轮次:2 轮
  5. 面试工具:BlueJeans(面试前 recruiter 会发送一个具体会议链接,网页在线使用)
  6. 代码共享方式:codebunk
Google 一直以来都是我的 dream company,我也一直关注着 Google 招聘的相关信息,并坚持参加 Google 的 kickstart 考试。Google 实习生的招聘流程为Online Application → Resume Screening → Technical Phone Interviews (2 rounds) → Hiring Committee Review → Project Match → Offer。理论上讲,越早申请越好,因为报名的人太多,如果申请太晚,可能岗位都满了,即使表现优异也有很大概率匹配不到好的岗位。
  1. 2020 年 11 月 27 日,Google 发来邮件通知我 kickstart 表现不错,是否愿意向2021 SWE internship岗位投递简历。然后立刻填写了申请表格并提交了准备好的中英文简历。
  2. 2020 年 12 月 17 日,通知我简历通过筛选,进入到第 3 步,并询问我 12 月底是否有时间,如果有时间可以在 12 月底就开始面试。我仔细思考了一下,还是决定再准备一段时间,最终把面试时间推到了 1 月初。
  3. 2021 年 1 月 7 日,第一轮面试。中文面试,面试小哥很温和,可惜面试小哥的梯子不行,在线视频通话总是掉线,后来直接给我打的电话。先是询问了我目前的研究内容(PS:我一直以为直接问算法题的,都没有准备,现场粗略地说了一下,还好问的不是很深入)。然后就是一道算法题。这个题以前做过类似的,很轻松地说明了思路并分析了时间和空间复杂度,然后就是白板写代码啦。主要是每次用字典树都是 copy 的模板,现场手写字典树,还是有些惴惴不安。写的过程中果然出现了一个小 bug,面试官提醒了一下,还有就是手癌把Trie敲成了Tire,然后修改了一波就过了。接着面试官问了一个有关钓鱼网站列表维护的开放性问题面经不都说只问算法题么?,我跟着分享一些我自己的想法,不太成熟的想法面试官也会纠正。面试过程比较愉快,最后面试官问我有什么问题询问他。我先是询问实习生都有哪些方向?然后问最近有 Google 要回归中国大陆的消息,他作为 Google 内部员工对此有什么看法?面试小哥当时就笑了,回答说这个不方便透露,哈哈O(∩_∩)O。面试大概持续了 40 多分钟,面完我就感觉应该比较稳了。第二天下午就发来了邮件通知我进入下一轮面试。
  4. 2021 年 1 月 13 日,第二轮面试。英文面试,面试官是个外国大叔,只懂一点点中文。我当时填写的申请表要求的面试语言是中文,完全没想到会是英文面试,自我介绍也没有准备。整个面试过程就很难受了,我只能用贫瘠的口语尽量和面试官交流。面试官人很好,了解到我英文不是很好,说话速度明显慢了很多,但是每个题我还是需要和他确认好多次才能理解(哎,还是太菜了)。问的算法题很简单,理解题意后走一趟 dfs 就可以,很快就写了出来。之后又让我设计了几个可能的异常输入样例。然后是一个 follow up,我回答可以走一趟记忆化搜索。然后还问了一个问题,我当时没能理解题意时间就到了。面完自我感觉很差,大部分时间都在沟通题目意思了。刚刚面完我就立刻联系了 recruiter,询问为什么安排的是英文面试。recruiter 回复是她的失误。
  5. 2021 年 1 月 20 日,突然给我打电话,说是 Google 的面试官,我当时很懵,说之前完全没有接到通知今天会有面试。面试小哥还安慰我说不知道没关系,可以再和 recruiter 联系安排新的面试,不会对录取结果有影响。挂了电话后,立刻又给 recruiter 发了邮件,果然还是她的失误,没有提前给我发通知邮件。然后她给我打了电话表示了歉意,我表示希望尽快安排新的面试,毕竟我是通过 kickstart 通道进入的实习面试环节,应该是非常早的一批,结果快进入 1 月下旬还没有面试完,recruiter 表示会尽早安排。这次效率是真的高,第二天上午就给我发了面试时间的安排。
  6. 2021 年 1 月 22 日,加面。面试小哥先介绍了一下自己,然后还说这个面试平台没用过,以前都是用Google Docs。然后是我自我介绍,接着就是算法题环节,在 n 个物体中选出两个物体使某个公式的值最大。我先简化了一下公式,开始想出了一个用堆维护信息的 O ( n l o g n ) O(nlogn) O(nlogn)的算法,写完代码后面试官问有没有 O ( n ) O(n) O(n)的算法,我马上就意识到没必要用堆维护,直接保持一个变量不断更新就可以。这里还有个 bug,题目要求返回这两个物体的下标,我写的代码返回的是最大值,面试官提醒了我,我迅速改掉了。另外就是我在代码中用到了pair,面试官不理解这个类型 first 和 second 成员的意义,让我加了comment。接着面试官问了一个 follow up,在原有题目的基础上加了一个限制条件,我回答说用一个单调队列来维护就可以了,然后很快写完了代码。最后面试官给我提了几个建议,主要是要注意加强沟通,保证代码可读,这和平时刷题还是不一样(指的应该就是我没看清题目要求以及要对没有明显意义的变量加comment)。面试结束以后,自我感觉还不错,虽然有几个小 bug,但是题目做的比较流畅。
  7. 2021 年 1 月 27 日,hr 给我打电话并发邮件告知我面试通过,进入Hiring Committee Review阶段。后来又过了两天,hr 又屡次联系我要求提交本科成绩单,我本科绩点太渣了(满绩 4,我不到 3,23333),故意没有提交,结果还是躲不过,最后缠磨不过交了研究生的成绩单(也很渣,不提)。
  8. 2021 年 2 月 3 日,hr 打电话通知 hc 没有过,果然没交成绩单还能考虑下,交了就挂了。至此,Google 实习申请失败,sado(╥﹏╥)o
碎碎念:Google 的实习面试轮次很少,只有两轮,面试主要是算法题,一般都是力扣中等题水平,所以挂的人不会太多,大部分都会挂在 hc 阶段。如果要申 Google,一定要多参加 kickstart,平时也要多练习白板编程,面试中要多与面试官沟通,代码尽量一次性 bug free。申请失败之后,肯定要总结一下经验,我个人觉得主要是 3 点:
  1. 算法能力还是不够强。Kickstart 最高也就 170+名,平常都是 400-700 名水平,还有几次题目做的不顺 1000+名的,还是比较菜,要继续刷题才行。
  2. 英文口语不过关。明明知道外企对英语有要求,总是抱着侥幸心理,觉得面试可以选择中文,就万事大吉,说到底还是懒,总是逃避。
  3. 成绩单很差劲。个人认为这是最重要的原因了,两轮面试表现都还可以,进 hc 之后 recruiter 屡次要求我提交成绩单,提交之后果然毫无意外的挂了(TMD)。虽然因为成绩单挂了很可惜,但是也没有办法,而且没有办法进行补救。果然出来混都是要还的,本科的时候放荡不羁爱自由,没有好好学习修绩点,考研来浙,觉得本科就可以翻篇了,研究生更是放飞自我,60 分万岁。结果 Google 偏偏奉行的是精英主义,对成绩单很看重,结果就悲剧了。打击蛮大的,但是也没有办法,哎。
Microsoft
  1. 微软招聘网址点这里
  2. 微信公众号:微软招聘
  3. 面试类型:视频面试
  4. 面试轮次:3 轮(技术面 2 轮+leader 面 1 轮)
  5. 面试工具:Microsoft Teams(面试前会发送一个具体会议链接,可在线使用也可下载 app)
  6. 代码共享方式:由具体面试官决定,可能共享屏幕用自己的 IDE 写代码,也可能使用某些代码共享网址写代码
1 月中旬通过微软招聘微信公众号了解到,微软苏州和北京的暑期实习生招聘开始了,就立刻在网上提交了简历,并找了在微软苏州工作的大佬师姐帮忙内推了一波,师姐还以为 3 月份才开始招实习生,很惊讶这次怎么这么早就开始招人了(其实我也想问今年暑期实习生招聘怎么都这么早)。
  1. 2021 年 1 月 18 日,第一轮面试。中文面试,先是自我介绍,然后针对我简历上的各种信息问了很多问题,问的很详细,大概用了 20 多分钟,我还很惊讶,不是说外企都是直接上算法题的么?接着就是算法题了,和面试官分享了屏幕,在自己笔记本上的 VSCode 上写代码,顺便夸了一下 VSCode。具体题目可参考48. 旋转图像。这个题很久以前做过,但具体思路都忘了,现场想了一个非常复杂的逐个数字旋转的做法,要考虑的细节非常多,果然写起代码来很麻烦,最后吭吭哧哧总算写完了。哎,惭愧啊。面完感觉不太好(主要是代码写的不够顺畅),第二天忍不住去求师姐帮我问问结果,师姐笑我太着急了,才 1 天。只好继续耐心等待。又过了 1 天,发来了第二轮面试的通知。
  2. 2021 年 1 月 25 日,第二轮面试。中文面试。这次面试官来的好早,我面试前 7 分钟左右进入的Microsoft Teams,发现面试官已经在了。我还很惊讶,因为之前的面试,面试官都是在面试开始以后几分钟才会进来。同样,还是先自我介绍,然后问了一下我简历的相关问题。接着就是算法题环节了,这次面试官给了一个代码共享的链接,还要求共享屏幕以及开摄像头。第一个题目可参考496. 下一个更大元素 I,单调栈的模板题,很流畅的写完了,然后面试官要求用一个样例把整个代码走一遍,我就自己写了一个输入样例,用注释标明变量的值(相当于手动 debug),把整个程序走了一遍。第二个题目是原题LCP 14. 切分数组,之前没做过,把我难哭了 ┭┮﹏┭┮,我知道要质因子分解,我也知道要动态规划,但是我真的不会设计状态啊,还是太菜了。我和面试官讨论了很久,把我自己想到的都说了,后来面试官可能也是觉得这个题比较难,把正确的状态设计告诉了我,然后我强行理解了一波,想出了一个算法,然后就是白板写了素数筛和质因子分解以及动态规划的过程代码。面试官又说质因子分解的过程复杂度太高,然后我又在素数筛过程中把质因子保存了下来,这次面试官终于说可以了。我一看时间,还剩 3 分钟一个小时。做题做的我满头大汗,心想这个面试官一定是个刷题大佬,已经进微软了,竟然还做这么难的题。最后问了面试官几个问题就结束了。这次微软的效率高了不少,面完 2 个小时就给我发来了第三轮面试的通知,可能是想过年前抓紧把面试流程走完吧。
  3. 2021 年 1 月 28 日,第三轮面试。面试官迟到了一会,先是让我英文自我介绍,之后都是中文了。问了我简历上的几个问题,后来说到了 C++11 标准,问我 C++11 和 C++98 有什么不同,我回答了几个 C++11 的核心特性。又让我介绍了智能指针。接着就是一个算法题,可参考236. 二叉树的最近公共祖先,很快写完了代码。面试官问我还能优化么?我当时一怔,心想 O ( n ) O(n) O(n)的算法已经是正解了啊。我问这棵树是不是有特殊性质,面试官说没有,还提示了一下不是时间复杂度上的优化,要考虑一些特殊情况。我想了一会,试探着说如果遍历左子树已经找到解了,不需要再遍历右子树了。面试官说对,要考虑效率。我只能摊手,好吧,常数级别的优化也是优化,然后重写了代码。面试就结束了。我当时一看时间,整个面试还不到 40 分钟。面完我搜索了一下,原来微软三面是 leader 面,难怪。
  4. 2021 年 2 月 2 日,收到 offer call。我还很奇怪,不是一直说 4 轮面试么?怎么 3 轮就发 offer 了。和 hr 沟通,然后才知道我原来应聘的是实习生+校园大使,还要做一些校园宣传的工作。
  5. 2021 年 2 月 9 日,收到 offer letter。
碎碎念:微软的 hc 要比 Google 多,而且在中国大陆也有一些核心业务,所以进微软要比进 Google 要容易一些。微软面试偶尔问一下简历的项目,主要问的是算法题,而且一般就是力扣上的原题,所以刷好 leetcode 是非常必要的。微软面试一般是中文面试,但在 leader 面中,会要求用英文自我介绍,所以一定要提前准备好英文的自我介绍。
Amazon
  1. 亚马逊招聘网址点这里
  2. 微信公众号:亚马逊招聘
  3. 面试类型:视频面试(不用开摄像头)
  4. 面试轮次:2 轮(技术面 1 轮+leader 面 1 轮)
  5. 面试工具:Chime(面试前会发送一个具体会议链接,可在线使用也可下载 app)
  6. 代码共享方式:livecode
2 月底就通过官网投递了亚马逊实习生岗位,但是直到 3 月底,亚马逊才启动实习生的招聘工作,4 月份才得到面试机会,时间线拉的还是挺长的。
  1. 2021 年 4 月 6 日,第一轮面试。这一轮面试主要是 coding,问的是一道动态规划的题目,写了很多个版本的代码:普通递归、记忆化搜索、递推形式的二维 DP、使用滚动数组的一维 DP。面试官特别注重代码的可读性,在我 coding 的过程中说了很多次,而且需要我把 DP 状态的含义解释得非常清楚,可能我表达能力不太行,算法是正确的,但是状态的意义和面试官沟通了很久。需要重点说明的是,面试官给我的印象非常非常非常好(非常要说 3 遍),面试小哥先自我介绍了下,然后说了一下这场面试的时间安排(多长时间问简历,多长时间 coding,多长时间留给我提问),由于面试时间安排在了中午的饭点,还略带歉意地关心了一下我。coding 之前,面试官说有的面试者喜欢边 coding 边交流,有的喜欢先沟通好算法,然后再 coding,询问我喜欢哪一种。coding 过程中,和面试官的交流也非常流畅。整个面试让我觉得亚马逊特别注重面试者的感受,感受非常非常非常棒(非常继续说 3 遍)。
  2. 2021 年 4 月 6 日,第二轮面试,第一轮面试结束之后就是第二轮,两轮面试是放在一起的。这一轮面试是项目面。面试官让我介绍一个最熟悉的项目,大概用了 30 分钟。接下来的 20 分钟是反问环节,我本来以为面试官只是简单介绍一下亚马逊的工作,但是面试官显然超出了我的预期。面试官非常详细地介绍了亚马逊主要做的工作、亚马逊对实习生的培养规划以及为什么这样培养、亚马逊比较注重的技术细节(主要是代码规范、代码的可读性、可扩展性)。面试官讲话缓慢而清晰,一听就是个大佬,让我对亚马逊有了更深刻的了解。尤其是亚马逊对实习生的培养部分,让我觉得亚马逊不仅非常有规划,而且确实是非常用心地去培养实习生,而不仅仅是拉个人进来干活而已。好感 UP, UP。
  3. 2021 年 4 月 8 日,收到 offer call。亚马逊和别的公司不同,只有确认接受 offer 之后才会发正式的书面 offer 邮件。而且 offer call 的时候,问的很详细,而且似乎还会详细记录,问的问题包括对亚马逊的看法、面试体验如何、接了哪里的 offer、还在面哪些公司、是哪里人、选择工作的时候主要看重什么,等等等等。
  4. 2021 年 4 月 15 日,跟 hr 说拒了 offer。hr 还主动给我打电话询问具体原因,挺可惜的,整个招聘过程亚麻给我的体验真的非常棒。
【感想和经验|互联网企业实习面试经验分享(谷歌微软hulu阿里腾讯字节美团百度等等)】碎碎念:亚马逊是我春招过程中面过的所有公司里体验最好的一个,没有之一。在此不妨为亚马逊打个 call ,如果有兴趣推荐投递一下亚马逊啊。
Hulu
  1. hulu 招聘网址点这里
  2. 微信公众号:Hulu Beijing
  3. 面试类型:电话面试、视频面试
  4. 面试轮次:3 轮
  5. 面试工具:hulu zoom(面试前会发送一个具体会议链接,可在线使用也可下载 app)
  6. 代码共享方式:CoderPad
经常听人说 hulu 的 bar 很高,面试算法题很难,抱着试一试的心态投了 hulu 的实习生。
  1. 2021 年 4 月 7 日,第一轮面试。电话面试,面试官迟到了 5 分钟。先是自我介绍,问了简历上的几个项目,接着问了操作系统和数据库的八股文(头一次见外企会问八股文)。然后是 2 个算法题。不得不说,hulu 的算法题还是挺有难度的(可能也是我太菜了),而且有一定代码量,要考虑的边界条件也很多,这样就显得时间很紧张了。面试一共 1 小时,前面问简历和八股文就要用 10 分钟左右时间,算法题环节要读题、和面试官交流算法、考虑边界条件、写代码、测试几个用例(没错,要自己测试找 bug),所以 2 个算法题如果在读完题之后第一时间想不到最优解大概率会 GG。勉勉强强在一个小时内完成,问面试官我有哪些不足。面试官反馈说我挺优秀的(大雾),就是项目经历方面比较弱,但目前也来不及补救了(哎,还是太菜了啊)。
  2. 2021 年 4 月 13 日,第二轮面试。视频面试,自我介绍,问了下简历。接着就是算法题部分了,先是实现一个字节流缓冲区,比较简单,很快就写完了。接着是在前面写的字节流缓冲区基础上再实现一个暂存的缓冲区。不知道该怎么描述,和面试官沟通具体需求沟通了好久,最后也没太明白。在自己理解基础上写了代码,还被面试官指出了一个小 bug。最后面试官也没确定我的代码是不是对的,还说等面试完再看看,摊手。
  3. 2021 年 4 月 13 日,第三轮面试。和第二轮面试是紧挨着的。自我介绍,问了问项目,还让我详细介绍了深度学习的项目,挺让我意外的。接着就是算法题,滑动窗口最大值,比较简单,很快就做完了。接着问如何序列化 double 类型数字,如何序列化值域都是 double 的二叉树,要求存储空间尽可能小。交流了一下想法,我的想法都不是最优解-_-||。
  4. 没过几天,一个 hulu 的 hr 加了我,面试已经通过,进入 team match 阶段。
  5. 经过漫长的 team match,也有和一些 team 沟通,但还是没有 match 成功。虽然没收到拒信,但也没能拿到 offer。哎,还是太菜了。
碎碎念:hulu 面试都是算法题,而且题目还是有一定难度的,但也没有外界传闻的那么难。虽然通过面试要靠算法题,但是进入 team match 阶段似乎项目经历起着非常重要的作用,这一块就是我的弱项了,导致最后 team match 也没有成功,还是自己太菜了啊。
FreeWheel
  1. FreeWheel 招聘网址点这里
  2. 微信公众号:FreeWheel
  3. 面试类型:视频面试
  4. 面试轮次:3 轮
  5. 面试工具及代码共享工具:牛客网
是通过师兄内推的,和师兄交流中,师兄各种夸 Freewheel 福利待遇多么多么好,听说还给北京户口,不禁心向往之。FreeWheel 一共 3 轮面试,而且是放在一起的,每轮面试大概持续 45 分钟。
  1. 2021 年 5 月 17 日,第一轮面试。面试官是个小姐姐,迟到了 5 分钟左右。小姐姐还蛮温柔的,问了问简历上的一些问题,然后就是算法题环节了。先是手写了链表翻转的代码,然后问了一个以广告页面渲染为背景的算法题,用优先级队列实现就可以了。最后是实现一下堆排序中的建堆操作。总体感觉还不错。
  2. 2021 年 5 月 17 日,第二轮面试。面试官是个大佬,对技术很有热情,问的主要是 C++、函数式编程、C++和 Java、Python 的对比还有编码规范这些问题。问题都比较开放,面试过程比较愉快,像是和同事针对感兴趣的技术进行了一番讨论。面试官还主动介绍了 Freewheel 在做什么、他所在的部门主要做什么、Freewheel 有什么优势等等。最后面试官评价我技术能力在同龄人里相当突出,素质也很不错。我想这波稳了。
  3. 2021 年 5 月 17 日,第三轮面试,项目经理面。面试官是个姐姐,主要就是聊人生了,面试官一边面试一边还有记录。总体感觉还行,没什么太多可说的。听说经理面还会有英文的自我介绍的,然后实际并没有问,白准备了。
  4. 2021 年 5 月 20 日,hr 加我微信,告知面试通过。
碎碎念:FreeWheel 的技术栈主要是 C++和 Golang,而且比较推崇 C++的新标准,面试中会涉及许多 C++的新标准语法。第一轮面试是问算法题,第二轮面试比较随意,主要是聊一些对技术的看法。总体来说面试难度不大,面试体验相当不错。
Airbnb
  1. Airbnb 招聘网址点这里
  2. 面试类型:视频面试
  3. 面试轮次:3 轮(2 轮技术面+1 轮文化面试)
  4. 面试工具:airbnb zoom(面试前会发送一个具体会议链接,可在线使用也可下载 app)
  5. 代码共享方式:hackerrank
爱彼迎实习招聘启动时间还是蛮晚的,5 月份才开始招人。然而报的人真多,5 月下旬约面试的时候,hr 告诉我只剩一个 hc 了。。。
  1. 2021 年 5 月 14 日,做了爱彼迎的线上测试,就一个题,限时一小时。题目蛮简单的,力扣上的中等题原题,不到 10 分钟吧就撸完交了。
  2. 2021 年 5 月 24 日,两轮技术面,每轮 45 分钟。Airbnb 相当直接,连自我介绍都不需要,上来就是算法题,而且是 hard 难度,所幸每轮面试只有一个题。需要口述思路,现场编码,而且编码完成后,面试官还会给出很多测试数据现场测试,所有的数据都通过才行。因为还需要和面试官沟通以及测试数据,所以做题时间大概只有半小时,还是有点紧张的。实话说,我面过这么多家公司,还头一次见需要现场测试数据的。不过 airbnb 效率是真的高,上午面完,下午 3 点左右就告知面试通过,约下一轮面试。
  3. 2021 年 5 月 25 日,文化面试,30 分钟。这是我经历过的最尴尬的一场面试。面试官应该是做产品运营的,开始问了好几个有关爱彼迎公司的问题,比如爱彼迎的价值观是什么?爱彼迎和携程等等公司想比有什么优势和劣势?等等。实话说,我对爱彼迎的了解仅限于知道爱彼迎是搞民宿的,都没用过爱彼迎的 APP,所以这些问题都没答上来。。。面试官看我也比较窘迫,就问我平时有没有印象比较深的旅游经历,然而我并不喜欢旅游。。。尴尬。面试官后来又问参加过什么社团,有没有帮助过别人等等等等。面完感觉这波要凉。
  4. 2021 年 5 月 27 日,收到文化面试没有通过的通知,有点小伤感,不过也不冤枉,确实是自己准备不够充分,对爱彼迎了解不够深刻。哎,叹气。
碎碎念:爱彼迎两轮技术面试都是一个算法题,而且都是 hard 难度,需要现场 coding 和测试,对思维和代码能力都有很高的要求。之后的文化面试还是需要提前准备一下,而且可能需要按照面试运营岗位的要求去准备。
国内企业 腾讯
  1. 腾讯招聘网址点这里
  2. 微信公众号:腾讯招聘
  3. 投递岗位:游戏客户端开发(天美工作室)
  4. 面试类型:电话面试、腾讯会议面试
  5. 面试轮次:5 轮(初试 2 轮+复试 2 轮+hr 面 1 轮)
  6. 代码共享方式:不需要现场写代码
某天下午海投了一波简历,投完腾讯没多久就有一个 hr 加了我,询问了一些我的相关情况,后来我才意识到我把暑期实习投成了日常实习,修改了以后 hr 说暑期实习 3 月份才开始招人,到时候再联系我。哪知到了一月底,突然有个 hr 给我打了电话,问我近期是否有时间可以参加面试。我还有些意外,询问不是说 3 月份才开始么?hr 说可以提前面,就开始面试啦~~
  1. 2021 年 1 月 26 日,第一轮面试。先自我介绍,然后主要问了一些 C++的问题,答得还行。又问到了模板元编程,我说不太了解;又问我了不了解游戏开发的引擎,我说不太了解;又问我研究生阶段都在做深度学习,怎么想到投游戏开发,我说游戏开发是新兴行业,身边有好多同学都想进入这个行业,学深度学习只是它比较适合解决我研究生阶段的课题,我自己还是想走开发等等;又问我对 base 有要求么,我心想这不会先是 hr 面吧。最后面试官说他没什么问题了,然后沉默了十几秒,也没挂电话,我当时心想按惯例不是应该问我有没有问题问你么?然后我就主动问了几个问题,面试就结束了。我一看时间,面试不到半小时,心想面试时间这么短,凉凉。哪知道过了几个小时,给我发邮件说第二天上午第二轮面试。emmmmm,可能这就是腾讯的与众不同之处吧。
  2. 2021 年 1 月 27 日,第二轮面试。先自我介绍,然后让我介绍一下用到的神经网络,我。。。研发岗还问这个,吧啦吧啦说了一下,又介绍了一下插值算法的原理。接着就问我 github 上一些写过的小游戏,我说都是大一大二写的,比较简单,然后简单介绍了其中一个(时间太久了,具体细节都忘了,也没想到会问,所以大家面试之前自己 github 上的东西还是提前熟悉一下)。然后就是问 C++的相关知识了,问的蛮细的,但都比较基础,答得还行。然后问了两个算法题,都是 leetcode 上的 easy 题,秒杀。还问了 C++外,还有没有用过其他语言,我说 Java 和 Python 用的多一些,然后想问我 Java 的 GC 机制,我说不知道,不好意思(真尴尬,啪啪打脸)。面试官还安慰我说不用紧张,没关系的(真的 nice),还说觉得我 C++基础不错,挺适合的。然后还是问我为什么想做游戏,都玩过什么游戏。最后问我有没有什么问题问他,我就问做游戏我提前还应该学些什么,他回答说要了解一些比较常见的引擎。我还问面试有几轮,他回答说他也不清楚。这次面试大概持续了一个小时,自我感觉还行。
  3. 2021 年 2 月 22 日,第三轮面试。没自我介绍,直接问问题。先问 C++的一些问题,令我印象比较深刻的,是一个传入 const 左值引用会调用 const 左值引用版本还是右值引用版本的问题,想错了方向,只考虑了效率,没考虑安全性,答错了。然后问了一些简历上的项目,还问了一些深度学习的问题(???)。最后问了操作系统的一些问题,答得不太好。总结起来面试表现一般。
  4. 2021 年 2 月 25 日,第四轮面试。先自我介绍,然后问了一些项目。接着就是问专业问题了,问的问题超级多,涉及 C++、数据结构与算法、操作系统、设计模式、计算机图形学、数学问题等等。大概持续了 1 个小时,C++和数据结构答得还不错,其它一般般。而且我回答完一个问题,面试官也没有反馈,直接就问下一个问题。面试官问了我两三次为什么要投游戏开发岗,因为我的简历和游戏开发相关度比较低,而且平时也没玩过王者荣耀这类手游。我只能各种夸游戏行业是新兴行业(总不能让我说是随意投的吧,摊手)。总结来说面试感受一般般,感觉要凉。
  5. 2021 年 3 月 6 日,hr 面。面试官是个小姐姐,很和善。先自我介绍,主要问了我为什么要投腾讯的游戏开发,回答当然是各种夸啊。还问我玩过什么游戏,建议我入职之前玩一下手游(没玩过游戏是我的错了,摊手),然后问我还投了其它什么公司,有没有收到 Offer;实习的时间;对 base 有什么要求。最后就是我问问题的环节了,问了实习时间的要求、实习转正率、多久能有结果,还问了工作作息,这个小姐姐还详细解释了一下腾讯不会有 996 这种违反劳动法的行为(真的么?话说这场 hr 面可是在周五晚上 9 点半,不过还是要为小姐姐承认 996 违反劳动法点赞)。最后小姐姐还说后面会加我的微信。面试大概 20 分钟,感觉这波稳了。
  6. 2021 年 3 月 9 日,收到 offer call。
  7. 2021 年 3 月 10 日,收到 offer letter。
  8. 2021 年 3 月 18 日,腾讯 hr 加我微信,说收到了我的拒信,询问了一下原因,问我还能不能再争取一下,emmmmm,还是忍痛拒了。
碎碎念:当初没多想,觉得游戏开发行业不错,就投了腾讯游戏开发,最后虽然主要靠 C++和数据结构基础不错拿下了 offer,但是几乎每轮面试(尤其是第 4 轮)都会怼我:你既没有玩过什么手游,又没有学过游戏开发的技术,为什么要投游戏开发呢?最后一轮 hr 面还特意告诉我入职之前要玩一下手游,不然以后没法开展工作。所以要投游戏开发还是要以我做反例,投之前多打手游(段位高或许还可以写在简历上,哈哈),学一些游戏开发的引擎技术。总结来说,4 轮技术面问的都是比较基础的问题,而且面试官都很和气,面试中回答不上的问题也会引导你,感受非常好。
阿里
  1. 阿里招聘网址点这里
  2. 微信公众号:阿里巴巴集团招聘
  3. 投递岗位:C++研发工程师(淘系技术部、钉钉)
  4. 面试类型:电话面试
  5. 面试轮次:4 轮(一面->leader 面->交叉面->hr 面)
  6. 代码共享方式:不需要现场写代码
看到 98 上有阿里淘系技术部的内推帖子,就投了一下简历。后来发现阿里不是统一招人,各个部门分开招聘,招人的帖子层出不穷,在我们年级群日常刷屏,简直是百团大战。后来又陆陆续续投了几个部门,最后只选择了淘系技术部和钉钉面试。
淘系技术部
  1. 2021 年 2 月 8 日,第一轮面试。先自我介绍,问了简历上的项目。面试官是做网络相关的,问如何根据每个员工的网络流量,判断这个员工在做什么(???),答得一般。问了 3 个算法题,很简单,答得还不错。然后问了 C++、操作系统和计算机网络的知识。最后面试官给的评价就是算法和 C++都还不错,操作系统和计算机网络一般,可能不太适合他们部门(凉凉),毕竟他们还是想招一些有经验的。面试持续了大概 40 分钟左右吧。在我的视角,感觉面试官还是很 nice 的,很和善,应该是个技术大佬,而且应该在网络和操作系统方面经验比较丰富,问的问题都不是八股,明显是经过自己思考的。自己在这方面就比较欠缺了,掌握的都是些书本上的理论知识,没有做过什么实践和思考。整场面试下来,自己收获还是蛮大的。
  2. 2021 年 3 月 5 日,阿里春招正式启动,hr 特地给我打电话,告诉我一面表现很好,给我发了内推邮件,希望我投递淘系技术部门,并表示一周之内会安排二面。我只能表示这个部门反射弧稍微长了点哈,一面结束,隔了一个月才有反馈。我都以为挂了,又给好多其它阿里部门投了简历。后续还是投了淘系技术部,毕竟已经面过一次了,而且反馈还不错。
  3. 2021 年 3 月 6 日,参加阿里线上笔试。牛客平台,1 小时 2 个算法题。笔试前信心满满,心想国内 IT 企业又不像外企那么注重算法,而且又是普通的实习生招募,笔试的题还能有多难?结果被打脸,笔试一上来 2 个题都是力扣 hard 难度,不讲码德,笔试题目分别是815. 公交路线、1411. 给 N x 3 网格图涂色的方案数,A 了一道半,哭了。太轻敌了,当事人表示很后悔没好好准备。希望有点运气,能进后续面试吧。另外,阿里笔试允许跳出窗口,可以在本地 IDE 上调试好之后再提交到网页窗口。
  4. 2021 年 3 月 9 日,第二轮面试。事先没通知,突然打来了电话,问有没有时间。我说一会还有事,要面多长时间,回复说半个小时左右,我觉得半个小时还 OK,就面了。这次面试官一听就是个 leader,让我介绍自己做的最好的项目。我就介绍了研究生做深度学习的课题,本来介绍的时候有点发虚,因为课题和 C++研发相关性很弱。结果面试官就这个项目问了很多实现上的细节问题,还问我技术上的难点是什么,有什么好的解决办法;对深度学习领域的发展有什么看法;将来的职业规划。问的问题都是一些宏观的问题,我没想到技术面会就一个项目问这么详细,准备的并不充分,答得很一般,觉得这波要挂。
  5. 2021 年 3 月 15 日,第三轮面试,交叉面。约面试时间出现了很多波折,最后总算定下来。项目面,主要针对简历上的项目提问。上次二面被面试官暴击之后,吸取了教训,把简历上的项目好好准备了一下。把测试用的方法、得到的数据、算法用时都详细介绍了一下,尤其突出性能优化这一方面,面试官的反馈明显比二面时好很多,经常说挺好,最后还说我们尽快把流程往后推进好吧。面试完我就感觉这波应该稳了。
  6. 2021 年 3 月 18 日,hr 面。面试官迟到了 8 分钟左右,问了好多技术问题(???),最后还问了一个算法题(???),让我猝不及防。后来问内推同学,原来是开发人员转的 hr,难怪了。
  7. 2021 年 3 月 25 日,收到意向书。这里要特别提一句,阿里意向书有效期一个月,可谓相当大气了。
  8. 2021 年 3 月 30 日,阿里 hr 了解到我可能拒绝 offer,给我打电话,再次宣传了一下他们部门的优势和技术挑战,希望我慎重考虑。忍痛拒了 offer。
钉钉
  1. 2021 年 3 月 9 日,第一轮面试。面试小哥是做 Java 的,问的问题都偏 Java 一些。问的第一个问题就是我对面向对象设计有什么看法,我当时就一激灵。接着问我怎么看待组合优于继承,我举了 Java 标准库里的Stack类做反例。面试官以为我懂 Java,就问我了不了解 Spring,我答不知道。还问了其它面向对象设计的问题;设计模式(我只记得单例模式和工厂模式,还没答好);数据库的范式(记不得了);等等。问的问题大多偏向面向对象软件的设计问题,C++就问了一个简单的指针和引用的区别。我说我报名的 C++岗,面试官说阿里做 C++的很少,Java 是主流。我问我万一能拿到 offer,入职之前是不是还要学 Java,面试官说是的(那招聘公告上还说有 C++开发岗???)。面试官又说入职之后会有专人带,入职前也会有培训,所以不用担心。我只能无奈摊手。总结来说,面试小哥人很和气,面试过程气氛也还不错,不过面试的问题让我觉得:在阿里投 C++是没有出路的,要投 C++还是出门左转腾讯吧。
  2. 2021 年 3 月 12 日,和钉钉校招负责人微信联系了一下,本来想询问下进度,没想到负责人说一面评价非常高(???),但是因为我投了淘系,没有办法给我安排后续面试流程。后来还特意给我打了电话,宣传了一下钉钉的优势,希望我放弃淘系技术部,转投钉钉部门。还说按我一面的评价,后续也就走个形式(???)。我回复说考虑一下。最后由于淘系反馈还不错,自己也不想再折腾了,就放弃了钉钉。钉钉部门的面试也就到此为止了。
碎碎念:阿里面试和其他公司还是略有不同,第一轮面试主要问一些基础问题和算法题(和国内其他公司差不多),但是二面三面主要问做过的项目,而且问的很详细,主要是抓你有没有性能优化的意识和实践。二面时,我在这方面没有准备,所以二面给的评价很低,最后是凭借一面表现不错才得以通过。所以二面后就立刻吸取教训,把简历上的项目好好准备了一下,描述中增加了许多具体数据作支撑,尤其突出性能优化这一方面做的工作,三面收到的评价就很不错。另外,阿里招聘还有很多槽点,两个字概括就是:混乱。各部门各自为政,导致我们年级群日常被刷屏,虽然在投简历时能够投多个部门,但是最后进面试流程的只能有一个部门,所以个人觉得这种宣传方式既浪费阿里的人力,也让应聘者觉得眼花缭乱,抓不到重点。此外,进入面试流程之后,似乎并没有专门的 hr 跟进,我在淘系的二面面试没有任何通知,面试官就打了电话过来要求面试。于是我在三面前特意和内推同学说了一下希望三面前先有个通知。结果面试时间也是通过电话而不是邮件方式通知的,当时我在参加一个公司的笔试,通知人员给我打了三四个电话都没通,由于来电是使用阿里内部电话而且需要分机号码,所以我根本无法回电。之后我又联系内推的同学(这时就体会到有一个内部人员内推的好处了),同学说某天下午给我来电,我特意说明有个时间段我有其它的面试,结果电话又在那个面试时间段打了过来,没有接到,我当时内心是崩溃的。后来还是通过内推同学敲定了最后的三面时间。通过这件事我体会到,邮件真的是比电话更有效的通讯方式。到了 hr 面,hr 迟到了大约 8 分钟,我内心又崩溃了一次。整个招聘面试可谓状况不断。说完槽点,再说些阿里让我感受特别好的地方,在我面过的国内的互联网公司中,阿里给我的面试体验几乎是最好的,面试官非常和气,问的问题很专业,八股文很少,对于面试者不太熟悉的问题,也会很积极地给面试者引导。而且面试过程主要询问的也是面试者熟悉的领域,尤其二三面的项目面,几乎就是面试者的主场,就像是面试者针对自己做过的项目做一次答辩,即使你的项目和部门方向完全不同,面试官也会耐心听你讲述,在你的描述中挖掘面试者的潜力,也就是说即使目前你做的东西和岗位需求并不完全匹配,公司也愿意花时间培养,感受很棒。
字节跳动
  1. 字节校园招聘网址点这里
  2. 微信公众号:字节跳动招聘
  3. 投递岗位:后端开发工程师、C++客户端开发实习生(抖音)
  4. 面试类型:视频面试
  5. 面试轮次:4 轮(技术面 2 轮+leader 面 1 轮+hr 面 1 轮)
  6. 面试工具及代码共享工具:牛客网、飞书
找了师姐内推,本来想投 C++开发岗,后来听师姐说她们部门挺不错的,就报了师姐的部门。没想到字节内推竟然不能免笔试,表示强烈谴责!!!
  1. 2021 年 3 月 7 日,字节笔试。2 小时 4 个题,牛客平台。由于前一天晚上阿里笔试太大意了,这次吸取了教训,用打 kickstart 的态度对待这场笔试。字节笔试不能跳出窗口,也就是说,只能在网页上编辑代码和提交,不得不说,这样写起来很不爽,几乎无法调试,而输出调试牛客网页输出窗口又太小,不方便看输出,总之写得很难受。题目难度个人觉得比阿里笔试简单多了,20 分钟 A 掉了前 3 题,第 4 题第一次交过了 80%多的样例,我以为是 TLE 了(没用过牛客笔试平台,以为只通知通过了多少样例,不会提示具体错误类型),就改写了滚动哈希,以此降低时间复杂度。等我吭哧吭哧写完,发现还是不对。然后发现了最尴尬的事情,一旦提交过的代码被覆盖,就无法找回,所以之前能通过 80%多样例的代码找不回来了。我顿时就不想写了,心里想这什么 LJ 平台。最后第 4 题也没过掉,感觉自己应该是理解错题目中的哪个点了。不过没关系,这个成绩感觉能过笔试了。
  2. 2021 年 3 月 15 日,第一轮面试。问了操作系统、计算机网络、数据库的一些八股。问我一个 sql 查询语句,两三年没写过了,不会,尴尬。然后就是写代码了,实现一个shared_ptr,吭吭哧哧的写完了,最后还是留下了一些小 bug。最后就是一个算法题,挺简单的,跟面试官说了一下思路,然后就结束了。感觉面试官准备的不是特别充分,每问完一个问题就会停顿 1 分钟左右(好像是去找新的问题,或者是在给我写评价?)。面完感觉应该能过。
  3. 2021 年 3 月 17 日,第二轮面试。面试官很和气,但是声音懒洋洋的,像是刚睡醒,说话慢慢悠悠的,一点生气都没有。先问了 python,我答我的技术栈是 C++,python 只是了解会用而已,被无视,继续问各种 python 问题。接着是问网络编程,我继续答我的技术栈是 C++,网络编程压根没接触过,继续被无视,面试官接着问问问,把我整上火了。然后用 C++实现了一下 python 的 defaultdict,还有最后的数据库几个问题答得还行。整个面试鸡同鸭讲,面试体验糟糕的很,面完就和内推的师姐说挂了。后悔,当初还是应该直接投 C++开发岗的。
前面的面试挂了以后,很是不服气(准确来说是把我气炸了),我又回去看了一下职位要求,也没要求必须要熟练掌握 python 和网络编程啊,这面试挂的能是我能力不行吗?肯定是岗位需求不匹配(认真脸.jpg)。我又火速又投了一个 C++开发岗,心想不蒸馒头争口气,一定要把字节的 offer 拿到手,气死我了。
  1. 2021 年 3 月 25 日,第一轮面试。面试官比较严肃,主要问的都是 C++的问题,面试官的 C++水平明显高我一个 level,问了很多 C++的细节,我连说带猜再瞎编,总算答的还行。最后还写了一个动态规划的题,很简单,5 分钟秒杀。提问环节,问面试官主要做什么,面试官就说了寥寥几句,给我的感觉很不好,感觉面试官对自己的工作完全没有激情,也没有表达的欲望,太沉闷了。
  2. 2021 年 3 月 30 日,第二轮面试。面试官没来,给 hr 打了电话,大概迟到了 10 分钟才上线,还没句解释或者致歉,印象很不好。面试官还是个女生,这还是我第一次遇到女面试官。问的问题也蛮奇怪的,问我怎么实现图像的膨胀和收缩功能(???)又问了问简历上的项目和 C++知识,最后写了一个算法题求浮点数的平方根,用了二分,结果面试官还问我了不了解牛顿迭代法?这场面试让我很难受啊。
  3. 2021 年 4 月 23 日,第三轮面试。开始是定在 4 月 7 日,结果面试官有事(可能是出差?),直接拖到了 4 月 23 日,和二面隔了将近一个月。到约定时间,面试官迟迟没上线,给 hr 打了电话,hr 反馈说面试链接有问题,在调(?)。过了 8 分钟左右吧,面试官才上线,也没句解释或者致歉。先做了一个算法题,挺简单的,就是要考虑的边界条件多了一些。然后又问怎么刷了那么多题、平时看什么书、实习时间等等有的没的。然后问了一些 C++问题,又给了一个 C++程序,问输出是什么,这个题蛮复杂的,想了好久,结果漏了一个相当关键的知识点,C++里 virtual 关键字是能自动继承的,答案就给错了,面试官又给了一次机会,后面就写对了。然后还问了一个智力题,给了一个相当暴力的解,最优解没想出来。面试体验很一般,感觉我和字节跳动这么不搭呢。
  4. 2021 年 4 月 27 日,hr 面。果然又迟到了,迟到了大概 3 分钟。整个面试持续了 20 分钟左右吧。问了问实习时间、有什么 offer,还问了一些做的项目。我说我手里 offer 蛮多的,催了催,让字节赶紧发 offer,剩下就没什么好说的了。
  5. 2021 年 4 月 28 日,offer call+offer letter。字节发 offer 效率还挺高的,晚上 8 点多打的电话。PS:字节给的实习工资真的高,瞬间把外企工资都秒成了渣渣。
碎碎念:实话说,在我面过的公司,字节是体验最差的。首先是面试官时间观念太差!总是迟到,让人蛮不爽的。再者,到我反问环节,询问部门主要做什么,有些面试官描述很简略,没有表达欲望,感觉并不热爱自己做的工作,没有激情。最后就是岗位匹配问题,字节还是蛮看重面试者与岗位的技术栈匹配程度的,我去面阿里、美团这种 Java 大厂,我总是第一时间表明我主要学的 C++,面试官就很和善地避开 Java 相关的问题,而且还告诉我面试主要看重整体素质,技术栈不匹配没关系,可以将来入职再学。字节就完全不一样了,完全无视我的表述,本来字节的 offer 是志在必得的,结果吃了一记挂信,让我心态炸裂。
美团
  1. 美团招聘网址点这里
  2. 微信公众号:美团招聘
  3. 投递岗位:后端开发工程师(美团优选事业部)
  4. 面试类型:视频面试
  5. 面试轮次:2 轮(技术面+leader 面)
  6. 面试以及代码共享工具:牛客网视频面试(面试前会发送一个具体牛客网视频面试链接)
海投的简历,选择了美团优选事业群。
  1. 2021 年 3 月 13 日,美团笔试,2 小时 5 个题,用的赛码网平台,题目都比较简单。不得不说,这个平台比牛客差太多了,界面很难看,更重要的是,在网上测试自己的数据竟然只有结果,而不会显示程序输出。也就是说,你的程序 WA 了,只会告诉你 WA 了,但是不会显示你的程序针对这个输入数据的输出,根本无法在网页上 debug。虽然美团允许跳出界面,我也是用的本地 IDE 写好的程序,在本地测试过了样例,觉得算法没问题,但是在页面上提交总是报Runtime Error。开始用的 C++还能过百分之四五十的样例,后来实在没办法转 python 同样的算法竟然连样例都过不了(???),我又看不到程序输出,根本不知道是哪里出了问题。开始第一个小时前 3 题一个没 A,急的我满头大汗,怎么算感觉自己的算法都是正确的,不会有访问越界情况。后来在考试过了 1 个小时 10 分钟左右的时候终于找到了问题,注释掉代码ios::sync_with_stdio(false); cin.tie(0); 就行了,至于为什么我也不知道(摊手)。找到了问题所在,后面就很简单了,大概 1 小时 40 分钟这样一次性把 5 个题都过了,然后就交卷了。不得不说,这次编码体验太差了,最简单的第一题我提交了 11 次才过,就为了找Runtime Error的原因。
  2. 2021 年 3 月 18 日,第一轮面试。自我介绍,强调了自己主要做 C++开发。面试官说美团是 Java 大厂(做 C++开发真是太难了),但人真的 nice,之后就没有问我 Java 的问题。问了些操作系统、数据库、计算机网络的八股,说了一下面向对象的思想以及 Linux 的常用命令。之后就是手撸二叉树后序遍历的非递归写法,最后写了一个 sql 语句。面试官人真的棒,问问题时会询问我 C++里有没有这个东西,我说有才继续问。最后感慨一句 C++开发岗真是太少了。PS:面试完 3 个多小时,就收到电话约二面时间,美团的效率真高。
  3. 2021 年 3 月 24 日,第二轮面试。自我介绍完,面试官说先写个题,看我简历算法题能力不错,出个难的,然后出了一个螺旋矩阵的题,我都怀疑我听错了,5 分钟连思路带复杂度带代码一口气撸完。面试官问我是不是以前做过,我微笑着说是(个人觉得还没一面的算法题难)。然后问了下哈希表的实现。剩下就是聊人生,说了项目的实现难点,和朋友同学之间交流有过什么分歧,有什么职业规划,等等等等。没想到会问这种问题,答的一般般。最后还问了一下有没有别的 offer,给我感觉像是一个 hr 面。面试官提了两次我说话语速太快,应该沉稳一些(汗)。整体来说,面试官人很 nice,交流起来让人感觉很温柔的样子。
  4. 2021 年 3 月 31 日,二面之后都没有收到任何通知,忍不住给 hr 打了电话,hr 回复说面试过了,大概过一两天会发 offer letter。我还很纳闷怎么没有 hr 面?然后聊了一下实习薪资、时间、工作作息等等,算是有一个 offer call 吧。
  5. 2021 年 4 月 1 日,收到 offer letter。
碎碎念:美团给我的面试感受非常棒,面试官都很和善,更重要的是,美团以 Java 开发为主,但面试官了解到我目前的技术栈主要是 C++以后,特意避开了 Java 相关的问题。二面面试官还特意向我强调,校招主要看面试者的整体素质,对经验要求不会特别严格,所以不用特别担心技术栈不匹配的问题。而且美团面试轮次才 2 轮,在国内互联网企业中可谓独树一帜,效率也很高,在这给美团点个赞。
百度
  1. 百度招聘网址点这里
  2. 微信公众号:百度招聘
  3. 投递岗位:C++开发工程师
  4. 面试类型:视频面试
  5. 面试轮次:4 轮(2 轮技术面+1 轮经理面+1 轮 hr 面)
  6. 面试以及代码共享工具:牛客网视频面试(面试前会发送一个具体牛客网视频面试链接)
海投的简历,选择了 C++开发岗。
  1. 2021 年 3 月 21 日,百度笔试,牛客平台。2 小时,11 道单选,9 道多选,3 道编程。涉及到网络、操作系统、数据结构等知识,尤其是时间复杂度和空间复杂度的分析,考察了好几道题。选择题里网络编程的题都不太会,其它都还好。最后 3 个编程题,太简单了,没什么好说的。50 多分钟写完,又检查了一遍,交卷收工。
  2. 2021 年 3 月 27 日,三轮面试。是的你没看错,百度不同凡响,3 轮面试一天面完,着实让我惊讶。每轮面试都差不多,一般做 2-3 个编程题,还要现场手写 1-2 个题的代码,有可能会问一些 hard 题。然后问一些简历上的项目,再问 C++和操作系统的八股文。前两轮面试表现都还不错,面试官宣传了一下他们部门的技术难点、挑战和优势,说我表现挺好的,会推荐给他们部门经理。第三轮经理面感觉也还行,应该稳了。
  3. 2021 年 4 月 6 日,收到 offer call。
  4. 2021 年 4 月 8 日,百度推荐架构部给我打了电话,宣传了一下部门优势和技术挑战,希望我慎重考虑。我还挺纳闷,我面试的部门是百度凤巢啊,对方解释说搜索架构部有优先选择权,不太懂。后面还加了我微信,还是忍痛拒了。
碎碎念:百度与众不同,一天之内连面 3 场,面试之前要做好准备。面试官人都挺和气的,即使不会的问题也会引导你。面试会问简历和现场 coding,一般会出 2-3 个算法题,问的也都是力扣上的原题,所以准备好 coding 至关重要。
网易
  1. 网易招聘网址点这里
  2. 微信公众号:网易招聘
  3. 投递岗位:C++开发实习生(网易云音乐)、游戏研发实习生(网易互娱)
  4. 面试类型:远程面试
  5. 面试轮次:2 轮
  6. 面试工具以及代码共享工具:牛客网视频面试(面试前会发送一个具体牛客网视频面试链接)
海投的简历,网易效率有点慢啊,投了一个多月,3 月底才开始安排笔试。
  1. 2021 年 3 月 27 日,笔试,牛客平台。2 小时,4 道编程+2 道问答。有一道编程题没做出来,笔试后在群里问了下,才发现大佬们都会,当时思路想偏了,还是太菜了啊。
  2. 笔试之后过了好久才发面试通知,当时都收到网易互娱的 offer 了,就直接拒了面试邀请。
由于网易精英实习生进度太慢了,又投了网易互娱的游戏研发实习生。
  1. 2021 年 3 月 31 日,笔试。牛客平台,150 分钟,3 道编程,题目都比较简单,没什么好说的。
  2. 2021 年 4 月 8 日,第一轮面试。先是半个小时的代码测试,提前也没有通知还有这一步,面试开始之后我喂喂喂地喊了半天,面试官也没吱声,我还以为我麦坏了。咱也不懂明明前面有一次笔试了,为啥面试前还要有代码测试,可能这就是网易的与众不同之处吧。题目不难,花了十几分钟写完代码,又测试了几个样例,在聊天窗口通知面试官写完了,面试官也没回我,然后我就吃点喝点上个厕所啥的,过了半小时面试官上线,问我代码测试感觉如何,说我写的挺快的,我就老老实实回答题目蛮简单的。面试官针对我的简历问了几个问题,夸我 C++和算法的能力蛮强啊(其实一般般),接着问了 C++、操作系统、网络、数据库这些八股文,然后问了几个算法题,口述了一下思路,咱也不懂既然前面有代码测试了怎么面试还会问算法题,不过无所谓,反正我肯定会(哈哈哈哈)。面试小哥人还是很好的,感觉年纪不大,交流起来异常的舒畅。面完感觉应该稳了,等二面。
  3. 2021 年 4 月 14 日,第二轮面试。自我介绍,问简历上的项目,感觉面试官也不是很感兴趣。接着就是做题了,实现一个支持尾部插入、头部删除、查询最大值这 3 种操作的队列,很简单,用一个单调队列维护最大值就可以了,3 种操作都是 O ( 1 ) O(1) O(1)。接着问如果第 3 种操作变成查询某个值在队列中的下标呢?这有点难了啊,我上了树状数组,3 种操作都是 O ( l o g n ) O(logn) O(logn)。面试官说复杂度太高了,我思考了一下,发现由于只是头部删除,只需要记录下头部删除的元素个数,用值的下标减去这个个数,就可以把 3 种操作优化到 O ( 1 ) O(1) O(1)。面试官又问如果删除操作变成可以删任何一个位置的数呢?我说前面的使用树状数组的操作可以支持。面试官说复杂度还是太高。这次实在不会了,没想到更优的解法。接着又问如何查找与坐标(x,y)的曼哈顿距离为 d 的所有坐标。我答走一趟广度优先遍历,很快写完了代码。面试官说太复杂了,我想了一下,说曼哈顿距离构成了一个菱形,遍历以(x,y)为中心,边长为 2d 的正方形,判断点是否在这个菱形内,面试官说还是太复杂。我又说让菱形左上边向右下边滑动,求出滑动过程中经过的所有点,面试官说还是复杂。摊牌了,我不会,计算几何没怎么学。面试官说先求第一象限的三角形内的点,用两重循环就可以了。我立马悟了,题目其实挺简单的,我从一开始就想复杂了,就很简单的走一趟扫描线算法就行。太菜了,我真是个垃圾。
  4. 2021 年 4 月 20 日,收到 offer letter。还是头一次遇到没有 offer call,直接发 offer letter 的情况。
碎碎念:网易还是很注重算法题的,而且面试的题目有一些难度,需要一定的刷题量。面试官都比较和蔼,二面我都以为要挂了,结果还是发了 offer。PS:网易互娱实习生给的薪资还是挺高的,而且在广州,城市也不错,实习的话可以作为一个不错的选择。

    推荐阅读