爱奇艺实习面经

前言:投的爱奇艺大数据实习,重复投了两份,然后面了两个部门,hr协调之后一下午面完了,一共算5轮技术吧(最后面试官提醒最好不要有这种操作,尤其算兄弟部门,容易…)

爱奇艺智能分发部一面:

问实习,项目问个遍,为什么辞职
mysql,关键字
mysql中连接
hive中的join及优化
sql给搜索结果生成序号
剩下忘了…大概是问我什么什么会不会,我说会…

这位Leader蛮nice的,感觉是偏数据仓库ETL那种方向,我的技术栈说实话也是偏实时流处理和离线处理的,会询问我的意向,问我哪个更感兴趣,面试更像是在聊天,非常放松之后大概觉得我方向偏流计算吧,然后二面请来了应该是流处理方向的leader吧。

爱奇艺智能分发部二面:

感觉是位大佬
状态管理
水印
spark和flink区别
spark处理流程
G1收集器
算子action和transformation
垃圾回收
cms,过程
job,task,stage区分
划分job,常用的算子
处理spark oom
数据倾斜
jvm调优参数,xss,xms,xmx
spark容错
spark streaming和structed streaming
解决散列冲突
hashmap实现
rowkey设计
kafka可靠性和持久性

手写代码:两个数组取中位数

面试官也很Nice没有给人咄咄逼人的感觉,不会的点我声明不太清楚,之后他会给你解释,然后问下一个问题,有几个问题记不清了,我觉得问的还是比较细致的。

爱奇艺智能平台部一+二面(电面+现场coding):

先问上家实习经历,以及为什么辞职
进入正题
object方法
wait()和sleep()
notify()和notifyall()区别
唤醒哪个
创建线程方法
run和start
重写和重载
父子类同名方法返回值类型不同
同一个类中呢
linux文件重命名
查看进程
什么叫排序的稳定性
稳定和不稳定排序方法
冒泡怎样变得不稳定
海量数据topk

手写代码:给定string转double(不许偷懒),之字层序遍历二叉树并打印

面试官人很好,先和你确认一下思路,确定你有思路之后你就可以开始写了,进门还倒了一杯水给我,倍感荣幸啊。

爱奇艺智能平台部三面

目测是总监级别的大佬,面试过程中也会引导你答题,好多都是给你一些场景,想让你移植到现有知识上来。

问实习,项目经历,以及自己的项目问个遍
画实习项目架构图
类似于向量压缩(map)
杂七杂八记不清了
map和mappartition
oozie作用
zookeeper
partitionbyrange分区依据
repartition使用场景
static作用
final作用
final修饰引用 设计一个不可变类

代码:设计一个vector类(类似于向量的形式,仿照list源码,构造函数并实现add方法)

总的来说,面试体验很nice,基本都是引导类型的,不会的点最后会和你说明,好感upup。面试了一共5个小时左右…开心的是,最后收到了两个部门的确认offer,之后两位leader谈了部门的主要业务,说实话两位leader我都很喜欢,工作内容也都不错,纠结的ing…

最后个人总结:我个人觉得现在面试和前两年面试难度已经有所上升了,以前面试必问的jvm现在简历上写(熟悉jvm)几乎都没人问了,成为了默认大家都会的东西,我简历上的博客都没人问过,想必也是没人看过了,实习和项目经验比较重要,可能企业更缺乏工程能力比较强的人,我运气也算比较好,上家的实习经历也为我的简历增色不少,还有就是基础内容的考察,相对更扣细节了,表面上的东西一看谁都会,有的人讲出来是8分,有的人只能讲出来5分,我觉得所谓基础好不好的差别在这里,还有基本算法的考察也成了必须的要求了,有时间还是多看书多看报少打游戏多睡觉吧。老田冲鸭!