第一份实习

经过半个月左右的流程,我在 2024/05/09 拿到了人生的第一份实习,是腾讯音乐娱乐集团(TME)的 iOS 客户端开发岗位,同时,在这个过程中,也对找实习的流程有了一些初步的概念,所以写点东西记录下。

1. 前期 && 简历的失误

2 月左右的时候,我并没有准备认真投实习,我随便做了下简历就投了出去,现在回想,简历里犯了一些很基础但严重的错误:

1. 简历内容太长,整体非常臃肿,我甚至想当然地在里面加入了一些诸如“求职目标”这样的主观评价

2. 内容的技术要点不清晰,一眼看下去无论是项目还是研究经历都莫名其妙

3. 排版凌乱,由于短句的大量出现,整体格局呈现左满右空的画面

也是由于这些原因,初期投递的岗位基本没有回应。

2. 焦虑期 && 做决定

等到 4 月的时候,我的一位好朋友拿到了美团的测试开发实习,同时,我了解到另一位在实验室实习的同学已经开始参与到文章的后期工作中,可能产出系统方向的 n 作了。我这时开始有些焦虑,因为我虽然准备出国,但后面的计划并不清晰…

所以经过了几天的思考之后,我决定认真找实习,随后我仔细地修改了简历,并开始有计划地投递目标岗位,主要是客户端、C/C++、嵌入式软件。

3. 准备期 && 方法

一般来说,笔试并不是很困难的事情,至少不是筛选的主要手段,面试的准备相对重要。

面试主要分为:

1. 手撕代码(leetcode easy 和 medium)

2. 概念性问题(常说的“八股”)

3. 项目经历(我除了课设,基本什么都没有)

一般企业的手撕代码并不难准备,我就把 leetcode 100(https://leetcode.cn/studyplan/top-100-liked/) 做了一半,难的题随缘,简单的基本问题不大;

对于“八股文”,因为我的操作系统、网络、C 这些基础课学的还不错,所以大部分内容不需要硬背,回顾和理解足以应付常见的问题(线程进程?http / https?);

项目经历这部分,我没什么可说的,大学过的比较失败的我只能在面试官面前支支吾吾地讲我的课设…

4. 美团 && 秒挂

美团的面试让我了解到:面试的确是随机性非常大的事情。朋友成功入职美团,并跟我说美团面试非常友好,各方面都比较基础,因此我也投递了美团测试开发,通过了笔试,但在一面就经历了拷打:

首先是写算法题:

一上来就给了一道 easy 的 lc 题(https://leetcode.cn/problems/longest-common-prefix/description/)。

我直接开始写的暴力,时间复杂度为O(m * n),但写的时候一直怀疑一定有更好的方法,这样写肯定显得很愚蠢。

写完后,我说让我想想怎么优化,面试官直接叫停了,说“这应该是道经典题,你自己下去看看吧”。

结束后我想了想,原来这个题根本没有更快的方法...

接着是八股文:

被拷打了大量闻所未闻的东西,现在只记得有个问题是“如果有一个搜索框功能要开放给用户使用,你会如何测试它”;

我实在答不上来,一边瞎编、一边暗想应该已经寄了。

最后是项目:

哈哈,这我没什么可说的... 随便讲了讲最近在做的大创,他不懂、也没兴趣(其实我也还没完全搞懂...)。

5. TME && 三次面试

5.1 技术面(4.25 日 晚上)

忘记了有约面试,到点了还在 Ubuntu 里调损坏的摄像头…

可能是由于我的遗忘,上来就直接写了三道算法题(无 OJ,共享屏幕,10 mins 一道,然后说思路),我第一道就想错了思路,好在后面两道比较简单。

八股文的问题比较经典:

1. 进程 / 线程?

2. http / https?

3. 讲下 TLS 协议的四次握手(这个我刚好前一天看了眼,不然真不知道)

4...

最后还出了道脑筋急转弯,说 1 - 1000 里 7 出现了多少次?

我很没脑子的分类讨论硬算,在错了 3 次之后,说出正确的答案:300;

同学说:

1 - 1000 里的 7 出现的次数等于 000 - 999 里的 7 出现的次数

所以 1 2 3 4 5 6 7 8 9 0 都等价

7 出现的次数相当于所有数字出现次数的十分之一

也就是 3 * 1000 / 10 = 300

原来如此,我好笨。

5.2 技术面(4.29 日 下午)

应该是主管之类的人拷打项目,我被拷打的无地自容,只好连连叫道“这只是个课设,是个 toy project,我真没想那么多”。

5.2 HR面(5.8 日 下午)

走流程,公式化问答。

5.3 offer(5.9 日 下午)

谢谢腾讯音乐,有地方实习了,不枉我绿钻会员身份。

6 总结

保持好心态,一切都没问题,但要注意做事要有条理,最终总会有地方去的。