数据开发岗社招面经

面经

编码能力,清晰的表达,解决问题的方式,学习的方法,总结的能力,个人的潜力,感觉这几点往往是最重要的。这几点是需要在生活与工作中建立习惯来养成的。
明确自己感兴趣的行业,去寻找行业中的头部公司作为目标来去了解,去学习。
读书拓展思维,二八原理。

  • 作业帮
  • 元气森林
  • 莉莉丝游戏
  • 米哈游
  • 同策咨询
  • 久谦咨询
  • 本来生活
  • 字节数据中台
  • 腾讯
  • 个推
  • 阿里
  • 叽里呱啦
  • 建信金科
  • 同盾科技

米哈游

六月份尝试过一次,主要想看下自己的水平与市场的认可度,挂掉原因虽然了解的比较多,但是项目经验比较少,对方更多的用 Hive, 具体参考米哈游一面

作业帮

-面

  • 手写 Spark SQL 从日志中统计活跃用户和非活跃用户的平均年龄,活跃用户判断标准是是否连续登陆两天
  • leetcode 算法,无序数组中,返回两个数字为指定和的所有下标列表
  • 工作中碰到过哪些 Spark 调优,讲一个

二面

  • Spark Job 的提交流程,从宏观上来看,从一条 SQL 在 Spark 中执行过程来看
  • Spark RBO,常见的 RBO 。CBO
  • 怎么查看是否谓词下推?如何自己实现谓词下推
  • Spark SQL 参数优化,用过哪些参数
  • Spark JDBC 调优
  • Spark Job 提交 YARN 流程
  • Spark Join 策略有哪些
  • Broadcast 是怎么实现的,如果广播的变量发生了变动,executor 端怎么感知到
  • Spark Shuffle 流程,一些底层实现知道吗
  • Impala + hive
  • 存储有了解过吗,parquet,orc
  • jvm 内存模型
  • HashMap,哈希碰撞
  • 手写 SQL
    • 统计三年级总成绩大于 300 分的学生姓名和总成绩
    • 每个年级 TOP 3的学生姓名和总成绩
  • 你想找一个什么样的工作
  • 为什么年底换工作
  • 工作日晚上,周末一般做什么
  • 有没有技术上擅长但是我没问到的
  • 有啥想问我的吗

三面视频面

  • 简单介绍下自己和自己做过的项目
  • 主要用哪些技术栈
  • 互相了解聊了会,为什么离职,开始问技术
  • 实现斐波那契,并能真正跑出结果,优化成空间复杂度 O(1),主要看重现场编码能力
  • 手写 SQL
    • 计算用户行为序列,有一张表存在 id,action,time 字段,连续五次每次执行 action 的时间间隔小于一分钟的用户是活跃用户,统计活跃用户的数量
  • 有用 Spark Streaming 做过实时数据流处理吗,没做过项目,那了解过吗,写过 demo 吗?
  • 目前的薪资
  • 有什么想了解的吗

hr面

  • 离职原因
  • 职业规划
  • 薪资
  • 是否有其他 offer 和面试
  • 简单介绍公司及部门
  • 在线教育行业的看法

元气森林

-面电话面

  • 自我介绍 + 项目介绍
  • Spark 和 MR 的区别
  • Kakfa 的常用场景
  • 四层数仓理论
  • 如何解决数据不规范
  • 如何判别垃圾需求
  • 启发式问题(探讨下要做什么)

莉莉丝游戏

挂掉原因 - 反馈说需要全栈的,我就 Spark 深入的比较多,其他都是浅层了解

现场笔试

  • 写 shell 统计销量 TOP N
  • 给一张 MySQL 表,设计索引
  • SQL 题
  • leetcode easy 难度算法题
  • MR 的 shuffle 过程
  • JVM 内存模型
  • 实现单例模式

-面现场面

  • 说说笔试题难度
  • 介绍下印象最深刻的项目,你从中得到了什么,有哪些优化的地方
  • 了解 impala 吗
  • 了解 kudu 吗
  • parquet 文件格式
  • 为什么 impala 比 Spark 更常用作查询引擎,Impala 查询更快的原因是什么
  • 你说熟悉 Spark,读过源码吗,说下 shuffle 过程,说些 SQL 解析过程,说下 Spark JOIN 策略,broadcast 是怎么实现的
  • 部门是做什么的
  • 离职原因

同策咨询

-面

  • hive 内部表,外部表
  • 四层数仓理论
  • kafka 全局有序?
  • MySQL 索引的实现
  • hive,hbase 用过吗
  • 最后讲了下部门是做啥的,说是刚成立,不利于技术成长,劝我不要来,emmm,还有这样的操作。。。。。

字节数据中台

-面

  • 偏启发式问题,主要看你做没做过,解决问题的方式与思路
  • 简单自我介绍
  • 第一份工作是爬虫,爬过哪些数据,爬过非公开的数据吗
  • 逆向反编译怎么做,讲几个你自己做过的例子
  • 有哪些反爬措施,举个例子
  • 对于模式识别的反爬是怎么解决的
  • IP 代理池
  • 是怎么对爬下来的数据进行指标计算的,多维度计算
  • 是怎么计算指标的,技术栈是什么的,有没有做维度查询,某个维度出现了误差该怎么解决,计算出来的指标是怎么展示的
  • 如果指标计算出现了偏差,解决的方式是什么,怎么定位问题
  • 举个你拿 Spark SQL 跑指标计算的项目来讲一下
  • 数据库方面了解的多吗,比如 MySQL
  • 手撸算法,数组最短重复数字子串的长度,可以理解为数字重复量最大的数字之间的最小的跨度,比如 1,2,2,3,1,重复次数最多的数字是 1 和 2,但是 1 的跨度是5,2 的跨度是 2,所以返回 2,2 的长度,即结果是 2。
  • SQL 题
    • 统计学生的年级排名和班级排名
    • 如果是流式数据处理的话,这个计算排名的过程是什么样子的,比如 Flink

二面(WIP)

三面

腾讯

-面

  • 自我介绍
  • 简单介绍下做过的项目
  • 从 5000 万个数中找到前 50 个最小的数据
  • 快排
  • 手写 SQL
  • 技术栈
  • 个人优缺点

个推

一面电话面

  • 简单介绍
  • 爬虫相关的一些问题
  • Saprk JDBC 调节并行度,读过源码吗,原理是什么样子的
  • Spark Shuffle,相比 MR
  • 还愿意做爬虫吗?

二面( give up)

同盾科技

一面电话面

  • 在神策的工作主要是什么,以项目来介绍下
  • 主要用哪些技术栈
  • Spark Shufle
  • Spark Join
  • Spark 执行过程
  • Spark JDBC 调优
  • Spark 统一内存模型
  • jvm,堆内堆外都是干啥的
  • 指标计算是怎么做的
  • HDFS 架构
  • parquet, orc 的区别
  • Hbase
  • 是否愿意出差
  • 有啥想了解的吗

二面

三面 ( give up )

使用搜索:谷歌必应百度