11面后上岸抖音后端,我悟了

如果你想在校招中顺利拿到更好的offer,阿秀建议你多看看前人的经验 ,比如准备简历实习上岸经历校招总结阿里、字节、腾讯、美团等一二线大厂真实面经也欢迎来一起参加秋招打卡活动 等;如果你是计算机小白,学习/转行/校招路上感到迷茫或者需要帮助,可以点此联系阿秀;免费分享阿秀个人学习计算机以来的收集到的好资源,点此白嫖;如果你需要《阿秀的学习笔记》网站中求职相关知识点的PDF版本的话,可以点此下载

原文地址:https://mp.weixin.qq.com/s/IFw3VbZyqJn5kEK41aCHbw

作者:阿秀

你好,我是阿秀。

中国互联网第一二梯队的互联网公司就那几个,比如腾讯、阿里、字节、美团、快手、百度、JD等公司,也就是很多人经常说的BAT、TMD。

其中有那么几个公司特别喜欢来回捞人面试,挂了没关系,过段时间又会有别的部门来捞你面试,而在这其中又以腾讯字节最甚。

我记得以前秋招的时候在一个校招备战群里认识了一位大佬,叫做刘开挂,现在在腾讯WXG做后端研发。

这位大佬姓刘,开挂是我们给他起的外号,人很厉害,大家在群里讨论问题,他基本都能说道说道,也被大家誉为开挂选手,这位大佬就在秋招阶段被腾讯来回捞、来回面、来回鞭尸。

腾讯为人所熟知的几个有名的事业部,比如IEG、PCG之类的都捞过他,他也去面,但总在三面或者HR面挂掉,总之就是来回鞭尸。

他最后去了微信WXG部门,秋招结束后一合计,他一共面了 14 次腾讯,也就是说技术面 + 非技术面加起来一共有 14 轮。

无独有偶,字节这个公司也特别喜欢捞人面,前段时间阿秀的学习圈中有位学弟分享了自己面试字节 4 个部门,一共 11面的过程,部门时间线如下:

1、商业化技术-本地生活,终面挂,offer审批的时候排序挂了

2、商业化技术-本地生活-营销后端,终面挂,HR告知没hc了

3、商业化技术-广告,1面挂,不知道为什么挂,可能方向不匹配吧,我是java和go,广告那边是C++

4、抖音-后端研发 3轮技术面 + 1轮交叉面 + 1轮HR面

拿到抖音后端offer后,这位学弟总结了自己的秋招&面试经验,在九月份的时候他将自己的秋招经验分享在发表在了阿秀的学习圈中。

由于公众号机制,一天只能发表一篇文章,这就导致很多阿秀的学习圈中的内容没能分享出来,挺可惜的。

说回这位学弟,阿秀觉得学弟的这份经验十分难得,学习圈内也有学弟学妹很喜欢这份经验,认为是市面上少有的经验。

很喜欢这篇校招经验

今天来分享一下这位学弟的经验总结,下文中的”我“代表这位学弟本人:


终于轮到我了,前几天收到了抖音后端开发的意向书,别的大厂都是口头offer或者在排序,发一个贴来系统总结一下自己秋招的面试经历,没什么主题,想到哪就说到哪了。

根据我的经验看,只要面评好,终面挂,基本会一直捞,所以大家面字节一定要准备好再面,尤其是算法题,算法题没A出来的话,基本校招就与字节无缘了。

面经和总结我想写一些系统性的东西,就不赘述基础八股了,这些想必各位都已经看过不少了。

作为校招来说,基础八股掌握扎实和算法题A出来(不是过于变态难的情况下)是和别人排序的基础,这两点做不好基本就很难推进了。

所以各位同学八股和算法题一定要掌握熟练啊,就我大厂的面试体验看,每个大厂出的都是leetcode原题或者轻微变形题,只要刷熟练是一定可以A出来的,当然有的面试官出八皇后、LFU这种,那就只能听天由命,祈求自己不要遇到了

我觉得在面试中,真正能排序排过别人的,是你对项目的描述,扩展以及系统设计,接下来我对这三点总结一下:

# 第一点、项目的描述

能把项目用简短的语言说的让别人听得懂,是一项很重要的能力。

我字节第一次终面就是这里没做好,很多同学的项目其实做的都非常惊艳,但是描述的不是很好,导致面试官听不懂,不知道从哪里再深入的挖掘。

我的建议是,描述项目的时候,不要堆叠技术术语和名词,重点讲你这个项目分几个模块,每个模块干什么的,模块之间什么关系,把这个讲清楚就行了 ,这就够了。

# 第二点、项目的扩展

这是面试时候的重灾区,面试官会对项目的每个功能进行深挖,考察你对项目的理解,这方面的问题一定要自己提前思考过,这种问题面试现想是想不出来的。

对于后端开发项目来说,最常见的就是分布式与高并发,比如说很多人写Spring Cloud商城,那么这个项目怎么扩展到分布式环境,负载均衡怎么做,分布式的CAP,raft等常见的分布式协议和解决方案一定要事先准备好。

接下来是高并发,基本就是中间件的使用和锁的粒度的缩小,这个需要根据自己项目的业务需求做针对性的设计,对于自己的项目的扩展一定要事先准备好,如果是自己写的并有深入研究的最好,如果是找的商城、rpc、 秒杀, 那需要自己假想的业务场景就很多了

# 第三点、场景设计题

这基本是终面必考了,不得不说,中国现在是真的卷,美国系统设计只有社招考。

关于系统设计,主要有三点:

  • 平常多积累

  • 学会迁移

  • 多看面经

第一点,这个没什么好说的,网上已经有了很多资料了,平时就应该多注意积累,而不是每天花大量时间在抖音快手上,短暂的多巴胺带给你的只能是短暂的快乐,没有办法给你长远的满足感

第二点,学会迁移,我们在背八股文的时候,其实已经接触了很多的系统设计,比如redis集群,比如kafka的分区,以及文件的分段存储,总结下来就是要么加层,要么分块,我们可以把这种设计思想迁移到我们的系统设计中来。

第三点,多看面经,面试中会出现很多不常见的系统设计,比如说,我面字节的时候,有这样一个系统设计题,设计一个类似于企业微信的系统,消息的库表怎么设计。

我当时答得是主键是userId,,然后用bitmap存储读了哪几条消息,但是面试官提醒我说,在一个消息系统中,如果你看到了第99条消息,那么大概率可以认为前面98条你已经看过了,所以说数据库中只存99这个int值。

我说的不多,但很值得好好消化,这些也都是我的心里话,最后祝愿大家秋招顺利,心想事成。