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