【引言】
今天分享的是字节跳动-Data大数据开发岗位的面试经验。
拿到了年薪70W的Offer!对于大数据的同学有一定的参考意义
一共5面,从投递简历到发放Offer,整体耗时在1个月左右。
面试难度中等,需要一点算法能力(基本是剑指Offer原题)。
面试的重点就是简历上的项目+常用的大数据框架基础知识。
【一面 1.0h】
基础
1.自我介绍
2.项目介绍
3.数据仓库分层理论与设计
4.数仓模型设计(雪花模型、星星模型、星座模型)
5.维度退化
6.缓慢变化维度的几种处理方式,优缺点
7.事实表的分类
8.说一说SparkShuffle
9.sparks shuffle 和 mr 的区别
算法:
1.股票的最大利润
剑指offer原题,动态规划求解
2.sql 求每个城市当月、半年、累计一年的GMV(当月没有需要补0)
主要是使用开窗函数,难点在于需要先去构建每一个月的城市数据,以便填补当月没有GMV的数据
【二面 40min】
有点狠,问了很多底层东西
基础
1.mapparition foreachpariton 底层以及对应节点数据分发原理
2.spark dag 和 taskmamager 先后关系、
3.spark宽窄依赖
4.flink、spark checkpoint底层的区别、
5.数仓建模分层、
6.数据质量保证
7.上游新增一个字段数仓如何灵活应对
算法
1.最接近的三数之和
leetcode原题,排序+双指针
2.sql 股票的波峰和波谷值
开窗函数 lead + lag 解决
【三面 1.0h】
基础
1.项目介绍
2.离线数仓架构
3.给一段sql解释对应的mr流程
4.数据倾斜的优化(单表查询、多表join、大小表、大表)
5.spakr shuffle流程
6.flink两阶段提交
7.flink反压机制
8.流批一体的实现
9.数据湖实现方案
10.离职原因
11.职业规划
算法
1.最长不含重复字符的子字符串
2. sql题 连续登陆、主播粉丝相互关注(cross join)
【定级加面 0.5h】
1.自我介绍
2.项目介绍
3.项目难点,如何解决?
4.个人规划
5.离职原因
【HR面】
hr面主要是问离职原因 和 预期薪资。
offer审批大概在一周左右,会提交薪资证明材料,
主要是现在薪资的总包 和 其他公司offer证明。