首页 > 【快手】快手大数据开发工程师面经
头像
恶魔木魅妈妈咪
编辑于 2020-03-26 17:10
+ 关注

【快手】快手大数据开发工程师面经

好像是流媒体的部门,一个下午面了三面技术,感觉还行,大概分享一下还记得的一些题吧。

一面(40min)

自我介绍
Spark任务调度(源码)
Kafka基本原理说一下(生产消费模型,存储,Leader选举,ISR,反正想到啥就说啥了)
Consumer Group中Consumer和Partition的对应关系(Range和RoundRobin)
Kafka支持什么语义(三种语义),怎么实现Exactly Once
Spark Streaming和Flink的区别(说部门主要用Flink,奈何我没怎么用过)
Scala的模式匹配和Java有什么区别
用Kafka的过程中有过什么问题,怎么解决
实习做了什么
撕代码:

  1. 有序链表合并
  2. n*m的带有数字的矩阵,从左上角走到右下角,问最短的路径上经过的数字的和是多少?(dp)

二面(1h20min)

自我介绍
Java多线程了解吗?写个生产者消费者模型吧(wtf?上来就搞这个)
写完讲了讲
线程池熟悉是吧?写个线程池(??还好我看过源码)
写完问怎么改进让它支持切换到SHUTDOWN状态?因为我只是参考了源码实现了一个能提交任务的简单线程池,没考虑别的,要改进的话有点麻烦,就大概说了下思路,也不知道对不对。
Java线程同步啥的,不太记得了。
Flink了解吗,基本的概念说一下
撕算法:给一个不带分隔符的IP字符串,要给出所有的可能的IP地址,返回一个List(懵逼,用回溯写了个大概)。
也没让我问问题就匆匆结束了

三面(40min)

自我介绍
实习做了什么
Kafka基本原理说一下,和其他的MQ相比的优势
Kafka 消费者怎么从Kafka取数据的
消费者怎么保证ExactlyOnce(感觉跟前两面的问题的有点重复)
Kafka消费者怎么保证有序性
Kafka生产者怎么保证不丢不重复(幂等)
Kafka生产者写入怎么保证有序
撕算法:两字符串最长公共子串(一开始是别的题,我没太搞懂他什么意思,就换这个了,反正dp做呗)

差不多就这样结束,三面面试官赶着开会,就匆匆结束了。

整体感觉还可以,就是撕的有点多,面得太累。二面感觉压力有点大,也可能是我复习的不是很到位,Java还是要多看看。




更多模拟面试

全部评论

(10) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐