找了半个月的实习,面试了20多家,在同程HR面之后还被挂的惨痛经历之后,终于找到了一家不错的公司。(现在大环境下大数据实习太难找了,基本都是外包要人,BAT我都是一面挂,有些是简历挂)
下面讲讲我记得的一些问题
一面(40分钟)
自我介绍
- 熟悉二叉树吗,细说有多少种二叉树,哪些二叉树是用来排序的,并且将各个树的特点讲讲
- 了解MySQL存储引擎嘛,说说自己看法
- 计算机网络,TCP,UDP区别。Http和HTTPS的区别(计算机网络基础太差了,因为没系统学过,答得十分拉跨)
- 了解索引吗,为什么索引内存中用的是红黑树,而磁盘中存储的是B+树(二叉树搜索logn,多路搜索是nlogn,但是多路搜索树的话矮胖,IO时间少)
- 我看你简历上有数仓项目,讲讲对数仓理解,为什么要分层,有什么弊端嘛(因为层层有耦合性,如果ODS层数据出错,会污染整个数据仓库)
- 了解Linux命令嘛,说说常用的命令,如何求一个文档关键字出现的总次数(grep|wc)
- 我看你了解Spark,说说为什么比Mapreduce快(从Spark的DAG分Shuffle和容错性来答,而不是所谓RDD在内存中)
- 如何使用Spark读HDFS数据写到Mysql去(没写过)
- Spark和Kafka结合了解过嘛,spark转换算子(Map,Mappartition,foreachpartition的区别)
- 说说Flink是如何读Kafka的,Flink是如何分并行子任务的
- 一般用什么语言(Java),会什么语言(JAVA,PYTHON,SCALA),用过Springboot嘛(本科时候用过),为什么走大数据,而不是JAVA后端,有对比过嘛
- HashMap的理解,为什么不一开用红黑树,而是要到数组大于64并且链表大于8的时候变成红黑树(如果Hashcode写的规范的话连续8次命中同一个Slot的概率很低(符合泊松分布,概率为千万分之一),所以红黑树是用来兜底的)。为什么用二叉树而不用B+树(和前面的一样,二叉树搜索就是最快的)。
反问
- 如果能来贵公司,具体是做什么
- 请问多久有答复(面试官的回答让这几天碰壁的我又充满了信心:他说给我打80分,因为有些地方答得不够好,但是作为实习生来说还是优秀的)
二面(10分钟)
本来前面主面试官说只有一轮,然后加面了。原因是对我感兴趣,想问问我的情况,就和朋友聊天一样,主要想摸摸我的兴趣点。
整体面试下来还是很舒服的,面试官人也很好,当我们聊HashMap的时候聊的还是很起劲的,面试官说让我多看看,其实底层很有意思。总体来说是最舒服的一次面试了
#思必驰##实习面经#