字节大数据开发实习一面二面三面面经

一面

java

类加载(加载流程,加载器,强弱软虚引用会被问到,得了解)
垃圾回收(怎么解决计数法的弊端)
多线程(线程间的通信,锁,volatile,CAS)
内存模型,内存管理(溢出和泄漏的区别)
NIO(知道,不了解,哭)
Java核心就是围绕这几个方面

操作系统

没学过,直接跳过了(上来第一题就是内核态,状态切换相关,哭)
后面有提到数据传输过程,零拷贝的实现

redis

数据结构(zset怎么实现的)
备份(RDB和AOF)
RDB过程中修改数据,怎么办
缓存击穿/穿透/雪崩(常考点,但是面试官没问我)

spark

clien和cluster模式的区别
stage划分
宽窄依赖
spark shuffle(从stage划分递进到shuffle过程,条理性很强)
数据倾斜
join的种类
两张表join(小表直接广播出去,不能广播的表怎么解决)
spark shuffle
spark内存管理
(个人看法:spark面试核心三大块:内存管理,shuffle,数据倾斜相关的优化)
算法题:链表排序,面试官让我用归并排序实现。

总结

Java面试主要是大厂常见的类加载,垃圾回收,多线程,内存老四样。以前一直在做项目,Java这几样都是面试前突击复习的,以为一面只问基础,不问框架的,spark内容这几天没有复习,导致背过的spark内存管理都忘了。面试官问的问题,总的来说答出了70%-80%的样子,算法题也没AC,一面就这么惨,差不多是凉的透透的了。大厂考查得非常全面,也算是一次收获不小的经历了,想面字节的兄弟姐妹们要加油复习呀。(如果没凉,后面还会更新)
居然约了二面,周五面完继续更新。。。沟通交流很重要,跟面试官唠得好了,还是有机会的。
二面预测:MySQL索引,引擎,事务老三样,Kafka,HBase,Spark,Flink,挖项目。心态放平,就算没过,也是个提升自己的机会,加油!

二面

主要聊了聊业务,基础知识问的比较少
说说spark和flink的区别
介绍介绍kudu
如何设计一个类似kudu的数据库
面试官主要还是结合项目来聊业务,面试前一定要把自己的项目吃透
数据仓库建模,雪花模型,星型模型,ODS,DWD,DWS多层结构
数据结构相关的问了平衡二叉树,常见的排序算法,hashmap的实现原理
什么场景下用归并排序,什么场景下用快速排序(从mapreduce shuffle的角度出发,就能发现)
算法题是实现常数级的时间复杂度取出栈中的最小值(庆幸是简单题)
二面几乎是纯业务聊天,面试官非常友好
周四下午三面,我必须考虑这是不是我此生仅有的机会!

三面

继续聊项目聊业务,整个项目的细节,项目的难点,项目中遇到的问题
spark on yarn的流程,分部署模式答
spark程序故障重启,checkpoint检查点
讨论spark读取的数据,我一开始的理解的是driver读数据,分发到executor上,跟面试官讨论了一下,发现driver读取的是元数据,也就是数据位置/偏移量
讨论业务场景:
from to
1       2
2       3
2       4
3       5
3       6
3       7
3       8
3       9
抖音的视频转发场景:视频的原作者发布了一个视频吗,TA的关注者看到后会转发,后续关注者的关注者会继续转发,以此类推。我们现在有这样一个数据集,要找到视频的源头,以及转发的层次数。
我首先想到的是类比文件系统的目录结构,递归查找,一直追溯到源头,追溯的同时用一个变量记录层数,类似于我们查一张表,把结果当作条件,继续查找,一直递归查找到没有from,面试官让我考虑考虑别的方法;
思索片刻,想到了图,可以把整个集合抽象成图,用并查集就可以完美解决,面试官让我继续考虑有没有别的方法;
思索片刻,抽象成树,遍历树,面试官问在分布式场景下我们该如何考虑让这玩意分布式的实现;
思索片刻,这玩意的结构跟spark的DAG图不就很像嘛,一层结点一个RDD,一个结点就是一个分区,通过自定义分区,不停的扩大分区。
面试到这就差不多了,总的来说,二面三面都是考察业务能力和对项目的了解程度,面试官可能不会问的很细,但是一定要把项目讲细致,对做过的项目一定要滚瓜烂熟。
虽然没有得到确切的答复,整个过程还是蛮顺利的,跟面试官唠的也不错,许愿一下录用,希望明天能接到人力的电话!
来牛客还愿,投递状态更新成了面试已完成,这几天就静等录用了。希望我的好运能传递给看到这个帖子的兄弟姐妹们!
#实习##面经##字节跳动##大数据开发工程师#
全部评论
楼主你好, 请问面试算法题是在牛客写吗? 是ACM模式, 还是核心代码模式呢? 谢谢!
1 回复 分享
发布于 2021-03-19 09:49
什么场景下用归并排序,什么场景下用快速排序,楼主这个问题怎么回答的?我理解就是比如reduce中溢写到磁盘的有序数据和内存中的有序数据做排序使用到多路归并排序,所以说归并排序适合大量有序数据的合并,快排是不是适合小批量最好无序数据的场景数据的排序?
3 回复 分享
发布于 2021-03-30 23:36
兄弟你做了多少项目呀,我是跟着b站视频做的项目,感觉有点虚,但是学过的框架原理还比较熟,如果要自己找项目做,有推荐的吗
1 回复 分享
发布于 2021-03-19 14:40
楼主状态没更新,是凉了吗🤣
点赞 回复 分享
发布于 2022-06-07 11:41
请问想试试阿里云这边的数据开发岗位吗?
点赞 回复 分享
发布于 2021-03-09 19:24
兄弟感谢!
点赞 回复 分享
发布于 2021-03-09 17:37

相关推荐

#牛客AI配图神器#上来自我介绍,个人信息、在校所学专业、毕业时间、为什么学习大数据。询问出生年份。(没懂为什么专门问这个)介绍项目,离线数仓的五层是怎么设计的,DataX做首日的全量采集、Maxwell做后续每日的增量采集,Flume传输数据,Kafka起缓存作用,解耦各个组件。大数据竞赛拿了全国一等奖,那么这个竞赛中做的是什么业务?学校主修课是什么,大数据是否是自学?介绍一下简历中的离线数仓。说一下Maxwell的底层实现原理。讲一下Hive On Spark引擎的特点。介绍一下简历中的实时数仓。说一下checkpoint机制和精准一次。Docker的常用命令。Doris需要更新数据吗,怎么更新数据的,是用update吗?Doris在项目中的作用。Kafka的偏移量需要手动维护吗。项目的数据来自哪里,是真实的数据吗?数据量有多少,能达到什么级别,有一亿条数据吗?HBase在项目中是怎么使用的,为什么维表存到HBase中?为什么没有存到Redis中?FastJson了解吗,说一下。SpringBoot的拦截器和过滤器的区别。现在是否在校?反问工作压力大吗?公司有食堂吗?(我在想没食堂 可以买拼好饭吃😋)刚才回答的内容还算可以吗?(面试官:回答得没问题,学生能学到这个程度,已经可以了)写面经攒人品,希望能一把过#数仓面试##数据开发##数仓开发#
查看19道真题和解析
点赞 评论 收藏
分享
G了的牛可乐很爱吃烤肠:这周做了这么多笔试,阿里是让我唯一感到绝望的一个。突然发现我不只算法菜,语文也菜,根本看不懂题
投递阿里云等公司10个岗位
点赞 评论 收藏
分享
评论
11
97
分享

创作者周榜

更多
牛客网
牛客企业服务