面经-美团点评-离线大数据平台-Hadoop研发

时间:12.07
一面:

  1. 项目 在实习中用到的大数据知识,特别是平台方面。我聊到了自己在福州实习的时候用到的 flume + kafka 内容。
  2. Java 基础数据结构: HashMap 和 HashTable 的区别:看过源代码所以聊了源代码里面的实现。 还有 HashMap 当中的 哈嘻因子作用是什么,其实哈希因子的内容我忘了,就说了如果设置的太大或者太小会有什么结果。
  3. Java 并发,我就简单的聊了下 Synchronized. 感觉这部分面试官不满意。
  4. Java 虚拟机的内容,不多说,老生常谈。
  5. 数据库 left join 当中 on 和 where 的结果区别,为什么。
  6. 数据库索引 B+树索引 好处和缺点从数据结构上说明,和其他索引比较呢?
  7. 线程之间如何通信的问题,有哪几种,聊一下管道这个东西,我就说了管道一般是用在父线程与子线程当中用到。。。 其实 ls | grep 这个命令也是。。
  8. 线程与进程的区别,以及他们之间会发生怎样的关系,比如关掉进程,线程是否还存在等等。
  9. 源代码看了吗? 我回答看了一点 namenode 的部分,然后把知道的全说了,貌似面试官很满意。
  10. 最后问了一道编程题: m 个窗口 每个窗口处理任务的时间为 t[i],n个人来排队处理任务,问最短时间。 这题目最后拿来问我,我已经筋疲力尽。。所以答得特别难,知道是贪心当时就是写不出来,最后面试官给了提示然后才写出来了,诶。。

二面
一面结束一个小时二面就来了
1. 项目,实习当中遇到的问题,用了什么办法解决,感觉一上来就是要测你的深度。
2. 实习当中项目的 PV UV ,数据库多大,再大要怎么办,回答了分库分表,用分布式的内容等等。
2. 做项目过程当中遇到的问题,有没有尝试过学习一个特别小众的知识点去解决问题,问的很有意思,应该是问学习的广度。
3. Java虚拟机,GC 模式,哪些 GC 算发。如何判定一个 对象已经是垃圾,有哪些 GC ROOT ,最后一个问题卡住了。还有 Java并发的内容,还是聊了Synchronized,问了一些情况都回答上来了。
4. 源代码,还是说的 namenode 部分,当时面试官不满意,可能是因为我就说了源代码当中用到了哪些 API,并不知道 API 为什么这样实现,后来面试官和我说 读源代码学习 API 对程序员来说很有帮助,比如学习里面用到了哪些设计模式,用到了 nio 的内容,用到了http rpc 等等,整个二面的面试官深度就上去了,感觉是个大牛。。
5. 喜欢的代码方式,或者是习惯怎么学习,怎么读源码。
6. 聊 ACM ,这部分发挥真的烂透了,两年没打比赛了,问了熟知哪些解决数据结构问题的算法我居然一个都不了解,广深优深kmp什么的。。。我一个都没说。。后来面试官受不了了就问了一个二叉树两个节点求最近父节点的问题,还好一下就回答上来了。。然后就是手撕代码,二叉树的前序遍历回滚输出,再从输出回滚到正确的二叉树,问有没有坑,我回答要求是平衡二叉树。

整个过程最不满意的就是 算法部分和 源码,其他感觉发挥的一般。
到现在都没声音想来是挂了。

怎么说,感觉自己学习的还是不够多,勉励前行。

你可能感兴趣的:(程序人生)