2022年中总结 | 我如愿踏进了字节跳动

18,500 阅读15分钟

「时光不负,创作不停,本文正在参加2022年中总结征文大赛

写之前,我回头看了我2021年的年终总结——《# 回望我的前端之路,无愧 —— 2021年终总结》

看看那时候立的Flags,很开心我用了半年,就完成了最艰难的一条:跳槽到更好的地方。

image.png

嗯,我一个三本学生,非计算机专业,2020年毕业,在一家小公司工作了两年后,跳槽到了字节跳动。听起来就很()()()。

刚好利用这次年中总结活动,来聊聊这半年的心得叭,想到啥就聊点啥叭。

跳槽

从去年年尾,我就开始为跳槽备战了。虽然在flag中,我给自己提供了晋升的选项,但是在原公司的种种现象看来,这个选项还是比较缥缈的,即使晋升可能也拿不到我想要的薪酬。

因此,我果断选择了跳槽这个选项。

当时我也给目标公司做了一个筛选:我要进中大厂。当然这不仅仅是因为薪资的原因,而是我觉得我在中大厂中,更能学习到东西。或者说,它更能提供给我一个学习或交流的氛围。

跟大家一样,我也是在网上找了好多面经,面试题,面试相关的技术文章等等,然后开始学习。

“八股文”

但简单过了一下面试题后,我发现我有一部分知识还处于模糊状态,比如算法,网络协议等等。这时候在我面前就是两条路:背题,或者搞懂它。

而我果断选择了后者,因为我真的太讨厌背诵了。

既然决定要补基础,那干脆全部一起过一遍叭。因此我就根据各种面试题,面经,八股文等等,简单整理了一下前端面试的知识面。这里简单列一下:

  • HTML、CSS、JavaScript
  • 浏览器
  • 网络协议
  • 前端框架
  • 前端工程化
  • 安全问题
  • 设计模式
  • 算法与数据结构

就👆🏻这些点,然后一个个再不断细分去学习和巩固。

如果时间充裕的话,你可以去看书或者文档,系统的过一遍;否则的话你可以跟着面试题过一遍,当遇到不会的题目(包括你蒙对的题目),去深挖它的原理,并且举一反三,久而久之,你就会发现考来考去就那么几个点。其次,不要只看不动笔。敲一个demo好过你去背一遍。

而有一个例外的,就是算法与数据结构了。这个分支的学习,说白了就是刷力扣题。对此我专门去建立了一个leetcode仓库,保持每日至少一题(至今我还在刷哈哈哈)。

对于刷题的顺序,不太建议跟我一样按照顺序去刷题哈哈。在leetcode会对常用解法进行一个分类,你可以按照分类进行刷题。

其次就是难度,对于hard的我建议就是跳过,如果你时间充裕的话,你可以去看看题解学习。简单和中等的话,还是不看题解实现一遍,即使你用暴力解法,也好过你直接看题解。

刷过一定题量后,你也会发现,无非就那么几个解题技巧,然后举一反三。

项目

公司项目我后面再聊聊,这里想聊聊一些个人项目。

其实我差不多是去年后半年,才开始搞起我的github

image.png

当然,最开始搞github,一定不是为了什么开源项目,就很单纯就让简历丰富点,github有点能看的东西哈哈哈。

最开始,我会把我学习的一些demo往上面丢,然后也没太维护,有多少丢多少。然后开始学习源码,就会开始撸一些mini版框架。

这里最值得一提就是mini-vue3,这个项目其实就是报名了崔大的mini-vue课程,可能前段时间他的软文刷屏了哈哈哈。但营销虽营销,这课程是真心不错,收获蛮大的,不仅仅是对vue3的学习,而且还有学习到了一些单测的知识,开发的小技巧等等,而且在社群中,也认识了不少大佬。

然后想再聊聊这段时间对我帮助很大的另一个人——Anthony Fu。即使他压根就不认识我,但他确确实实是我前端学习道路上对我帮助最大的人之一哈哈哈。

最初知道他,还是在大圣的FunnyCoder栏目对他的采访,之后他也开始在B站活跃起来,一有空就直播,而我基本每个直播就会蹲着。在直播中,他都会去实现一个Feature,而每次看他从零到一去实现一个Feature时,我都会收获很多。其次,他有时候都会分享他一些学习方法,以及一些开源项目的经验。

也就是因为他,那段时间我也开始给开源项目提了PR了。从简单的修改错别字,到bugfix,再到小的feature实现,后续也参与到了Vitest中文文档的翻译工作。

image.png

我觉得很神奇的就是,我是一个英语巨烂的人,但因为你想要参与开源,或者想要更快的学习到前端最新的知识,你必须要过英语这一关。因此我现在都会优先去看英文文档,即便有中文文档了。然后我每天会去逛逛推特,follow一些技术博主,然后去看一下国外的博客等等。

久而久之,我不敢说英语有多厉害,但是起码比以前强了哈哈哈哈。

简历

来唠唠简历。

唠之前,我想明确一个点,就是简历内容远大于简历模板。我发现有很多同学会一上来就要别人的简历模板,然后套用,我个人觉得这思路是不太对的。

首先,我们得明确简历需要写什么内容:

  • 个人信息
    • 姓名
    • 邮箱
    • 联系方式
    • 学历
    • 工作年限
    • (其他平台的账号,如果有的话)
  • 教育背景(倒序,大学开始写)
    • 学校名称
    • 就读时间
    • 专业名称
  • 专业技能(合理使用“了解”、“熟悉”、“掌握”,没那把握就别写“精通”了)
  • 工作经历(倒序)
    • 公司名称
    • 在职时间
    • 岗位名称
    • (简单概括主要工作)
  • 项目经验(倒序)
    • 项目名称
    • 项目技术栈
    • 项目中你的角色
    • 项目亮点(你负责的)
    • (项目的链接,如果有且对外开放的话)
  • 开源项目(如果有的话,可以贴上链接)

简历核心内容基本上就是上面这些了,然后你先弄个word或者弄个markdown写出来,梳理清楚,最后在去网上找个模板贴上去就可以了。

再分享几个Tips:

  • 有链接可以贴上,然后再弄个超链接。
  • 最后一定要导出PDF!
  • 内容才是核心,模板只是帮你排版美化,看起来比较舒服而已,没必要搞得花里胡哨。(当然你可以搞一个简历网站)
  • 分得清主次,尽可能把你觉得优秀的地方放前面。(比如我学历不太好,我就丢到最后了)
  • 最好不要超过两页,字体不要太小,也不要太紧凑。
  • 自我评价可有可无,但内容最好真实,别乱写。
  • 项目亮点如果不是你负责的话,那你就学会把它变成你负责的,也就是能经得起面试官的拷问。(相反,如果禁不起拷问,那你就别乱写了)

面试

最初我的想法还是在广州求职,因为我原来公司就在广州。但在过年期间,我几个在深圳工作的朋友,疯狂安利我去深圳,一方面是深圳的互联网公司比广州的要多,另一方面是我很多朋友都在深圳哈哈哈哈。

差不多三月,我就开始投简历了。原本计划是裸辞后求职,但发现今年的大环境实属不太好,就不敢裸辞了。(之所以想裸辞是因为我不太想频繁请假去面试)

即使大环境不好,我也不想胡乱海投。首先我过滤掉小公司和外包公司,然后再看看岗位的JD,以及公司的背景等等。其实面试本来就是一个双向选择的。

这里重点聊聊我和字节的缘分叭哈哈哈。

最开始我是找了字节内推,投了抖音的岗位,但是初筛就挂了,后面我基本上就放弃字节了。之后在招聘App上逛的时候,看到字节飞书的招聘,我看了一下JD,就随手一投,然后就划过了,心想着也不会中。

没想到过段时间,字节HR打电话给我,邀请我参加面试,把我高兴的。而且那个HR也很好,她一听到我还在职,就主动帮我安排到晚上面试(我前面面试的公司,都是我主动问能不能晚上面试的)。

字节一共有四轮面试,三轮技术面一轮HR面。前两轮面试还是很顺利的,基本上都能回答上来,面试完后基本上就出结果。但三面就没那么顺利了,当时面试官,也就是我现在的Leader,他问了几道逻辑题,我都没能全部回答上来。但还好,我算法题都写出来了。那晚面试完后,我觉得就凉了,那晚也没出结果,说需要去对齐一下。

我就这么焦虑了几天,也继续看其它的岗位了。

最后很庆幸,三面过了,随后就是HR面试。那时候刚好端午节,HR面就只能推迟到端午节后,我原本以为三面可以快速出结果,然后速战速决,端午节前搞定的哈哈哈。

后面的流程都很顺利,面试结果出来后,需要等一下offer审批,差不多两三个工作日,就谈薪发offer了。这时候,我也推掉了其它的面试,就一心奔向字节跳动。

这里也说说面试的Tips叭:

  • 技术面基本就三部分:基础知识,项目,算法题。
  • 通常面试官都是从你简历上的项目开始发问,然后不断扩展,顺便延伸到基础知识。
  • 算法题不会到hard难度,你可以跟面试官分享你的思路,即使你最终写不出来。(有时候面试官会引导你去解题)
  • HR面要实事求是,对于前任公司、薪酬待遇、教育背景等,宁可避而不谈,也不要撒谎。
  • 面试结束后,最好做一下复盘,尤其是对你那些没做出来或者是蒙对的题目,再去学习一下。

字节工作心得

我五月中上旬正式入职字节。运气不太好,赶上深圳台风,入职第一天领了电脑就回家办公了,还好隔周就回工区上班了。

到现在已经入职两个月了,简单说说我的感觉叭。

首先我很幸运的遇到这个部门,没有传说中的卷和PUA,基本上我和同事都没怎么加过班。其次公司福利也很好,弹性上下班,包三餐,下午茶,房补,晚高峰打车报销,免费健身房等等。(可能一直在大厂的人会觉得这些很正常,但对于一个从小公司来到大厂的人,这妥妥的福利啊)

当然,从小公司跳槽到大厂,需要花点时间去适应一下整体开发流程。在小公司的流程是很简陋的,而大厂的开发流程是很完善的。这也是我为什么想来中大厂的原因。

其次,就是技术栈的转变。我之前是写Vue的,而字节是React的。我之前不太使用React,只是简单写过Demo而已。因此我需要花时间去学习一下React并熟悉业务代码。

总而言之,我爱字节哈哈哈哈。

最后唠唠

最后随便唠唠叭。

有必要读源码吗

确实,我这半年花了不少时间在读源码上,包括现在很多课程动不动就是带你读源码,手撸mini-xxx。所以这个是真的有助于我们成长,还是就是为了面试呢?

首先,我们得搞懂我们读源码是为了什么。其实就是要学习这个框架的底层原理,而学习了框架的原理,就是为了让我们平日里能够更高效率的开发。

就跟我们学习一个新事物一样,从入门,到实践,到深入学习;就跟我们打王者一样,从新手教程,到实战,到熟悉每个英雄的特征、铭文搭配、装备搭配、战队搭配,从而去提高自身的技术。

当然很多人会说,我打王者就直接之间使用推荐的铭文和出装,然后我只玩我喜欢的英雄,但我也不了解它的特征,我依旧可以玩得很好。那我只能说,你厉害哈哈哈。

我觉得弄清一个事物的原理,是你想要学会这个东西的必经之路。

其次,我们还需要明白就是,我们是需要明白原理,而不是需要对源码倒背如流。很多人会弄错重点,为了读源码而读源码,最后浪费了很多时间,也没收获很多东西。

所以我的建议,深入学习还是必须的,对于常用的框架,我们可以去了解它的原理,不要只停留在“只会用”。而弄清原理我们可以通过各种渠道,比如看看别人相关的技术文章,比如尝试去看看源码,当然你可以通过一些课程去带着你,或者可以参加一些源码共读的活动,我记得若川就有这个源码共读的活动。

然后看源码的时候,关注你要学习的部分。因为源码中有大量的处理边缘case的代码,这些基本上是可以忽略过。你得清楚你想要学习到什么,就去阅读对应的代码即可。

总之,要抱着目的去学习,不要盲目跟风。

学历焦虑

作为一个三本学子,多多少少有点学历焦虑的。

但很庆幸的是,我很擅长于将其化成学习动力,空闲时间多学习点东西。出来混的,迟早要还的。

所以这里我想说的是,如果你学历真的不怎么样,就多花点时间去提高自己的技术和能力,不要浪费大好时光在埋怨。

确实,对于应届生岗位或实习岗位,学历一定会是第一标准。但当你的工作年限越长,我相信面试过程中,你能力的比重,远大于你的学历。

最后附上,我在脉脉被人怼的截图(乐一乐就行,随他去叭):

image.png

展望环节

来到字节,也是一个新的开始。

对于剩余半年的展望,我希望能够快速的融入公司和业务。

当然,学习永无止境,况且我还得“精通”React呢哈哈哈。下半年的重心还是会放在React的学习上,然后还是会关注前端新动态,多学点东西哈哈哈。

然后希望能够保持写作,在掘金多发一些有营养的技术文章。

字节内推

最后,如果你想来字节工作或者实习,可以联系我哈哈。如果你准备好了,我可以帮你内推一下。

当然也可以加我唠唠有跟没的也行哈哈哈。

微信:

image.png

附上一些备战过程中觉得不错的文章

可能漏掉了很多好文章,反正能找到的都贴上了哈哈哈。

关于我

Blog:deweyou.me/

Github:github.com/ouduidui