面试经验

春招一份好的实习是秋招的一块敲门砖,可自己却很晚才意识到这个问题,一直想着暑假再去准备。最后在看着身边大佬都去了腾讯、网易实习,感觉不能再等下去了,在4月中旬开始寻找实习。路程一度异常坎坷,本着不放弃的精神在各个平台(拉钩/boss直聘/实习僧/牛客)投递了无数份简历,面试是一个不断学习的过程,把自己面试的问题记录下来,也许下次你就可以给面试官大佬聊聊你对问题的扩展。offer是一个很玄学的东西,当你没有时可能觉得人生无望,只要有了第一个就开始各种offer让你纠结选择中。第一个offer是杭州数睿科技的大数据案例开发师(人生第一个offer,最后有了其他公司拒掉了),然后收到了美团爸爸的数据仓库offer,接着来了京东的大数据开发offer(因为是部门直招,觉得转正可能会有问题就狠心拒掉了),最后收到随手科技的大数据开发岗(因为决定去大公司见见世面,虽然是喜欢的岗还是拒掉了)。人生大起大落,虽然找到了实习,但感觉平时的积累还是很重要,只要坚持不放弃,就没有完成不了的事。

滴滴面试:

1.讲一下hadoop的MapReduce过程

2.将一下wordcount的MapReduce过程和wordcount怎么去重

3.谈一下hashmap的源码

4.讲讲wordcount的过程

Kyligence面试:

1.java的基本类型

2.java的runnable和callable有什么区别

3.谈一下三种集合,hashset是怎么实现不重复的

4.谈一下MapReduce的过程

5.堆排序的过程是什么样的

美团面试(数据仓库):

一面:

1.讲一下你自己收获最多的项目

2.讲一下sql的join连接

3.讲一下sql中where和on在等值连接时的区别

4.讲一下堆、栈、队列的区别和应用场景

5.讲一个稳定的排序算法和不稳定的排序算法

6.讲一下java的单例模式(银行用户存款的例子)

二面:

1.讲一下你的其他项目

2.shell的常见命令(>、|、/dev/null)

3.给定一个userid,visit_time的文件a,如何通过shell来统计出现的用户数

int a=cut -d "," -f 1 2.txt|sort -u|wc -l

 echo $(($a-1))/echo `expr 10 - 1`(中间必须有空格)

4.Mysql的两个存储引擎有什么区别

5.有一个课程表,有学生、课程、分数三列,求每个学生分数最高的课程以及分数(sql语句)

6.谈一下hashmap的扩容

7.hadoop和spark streaming在处理数据时有什么区别

8.谈一下java的内存模型以及如何优化

随手科技

一面:

1.谈一下java的内存模型和jvm的垃圾回收

2.假如有三个子线程和一个主线程,可以用怎样的方法让三个子线程在运行完后再运行主线程(jdk1.5之后的并发包中的闭锁)

3.假如有三个线程,它们的执行顺序不一样,在某个节点如何让先到达的线程等待后到达的子线程然后一起执行(通过并发包里的栅栏实现)

4.hadoop的原理

5.用spark streaming,如果机器突然停止,如何保证重启后数据仍然接着原来的数据。

6.hive中的map join和reduce join

7.介绍一下sql的表分区

二面:

1.spark和hadoop的性能比较

2.kafka中怎么保证高性能的分布式系统

3.wait和sleep的区别和它们的应用场景

4.arraylist中怎么删除指定元素

蘑菇街:

一面:

1.spark streaming重启后从哪个点开始

2.你的项目用到了那些hive操作,简单介绍一下

3.讲一下java里的容器

4.hashset是怎么实现的

5.hashtable、currenthashmap和hashmap的区别

6.default类可以重载吗

二面:

1.hadoop的组件都有哪些,说说他们之间的关系

2.kafka的原理,中间数据最终存在哪里

3.spark streaming 的容错机制

4.数据仓库的定义

5.数据仓库和传统的数据库的不同

6.结合你的使用谈谈对hive的理解

7.spark的组件和之间的关系

网易

一面:

1.讲一下hive的星型模型和雪花模型

2.了解mysql的范式吗,给第三范式举一个例子

3.讲一下spark streaming的原理

4.讲一下spark的容错机制

5.sqoop从hive导入到mysql的是什么

6.hive里删除的数据怎么处理

7.你知道常见的hdfs操作(比较移动、上传文件)

 

你可能感兴趣的:(面试)