总结一下10月18号在VMware的面试吧

上上周,也就是国庆假期结束后,在水木上看见VMware招实习生的帖子,职位是做hadoop的,job description里的内容很丰富,而且都是研发相关的工作,我就赶紧修改简历准备投了,同时想起有个朋友之前跟我说过他去VMware实习了,于是问了下他里面的情况,而他正好就是在做hadoop的那个组里工作,听他的介绍,环境待遇都不错,更增强了我申请的愿望。我投了简历后,他也帮我内部推荐给了manager。第二天,我收到了面试通知,也就是18号上午9点半。

 

接下来的几天,我就开始重点做hadoop方面的准备工作了。这个具体过程就不说了,只大概说下准备的方面吧。我重点看了自己之前写的mapreduce框架分析报告,以及网上大牛写的HDFS分析,然后看了看hadoop的配置、体系结构等等,java方面没怎么准备,算法也只是看了下各种排序的原理和思想。然后在这几方面想了想该怎么回答:

  • 描述Hadoop的架构
  • 搭建Hadoop集群环境的步骤
  • 在西门子实习工作的简介
  • Hadoop可以优化的地方

 

等到面试那天,问的问题基本上都是按简历来的。最开始的时候我还是有点小紧张,大脑有点短路,一面面试官先让我介绍hadoop。我就准备先把hadoop的框架结构先介绍了,本来是先想讲hdfs、再在其上将mapreduce的,但是刚开始,面试官就让我讲我最熟悉的,我对mapreduce了解的更多,就直接讲mapreduce了,这导致我一说完架构就不知该怎么讲了,还是因为紧张导致的大脑短路了,这时面试官就开始问我问题了,包括任务执行的一致性问题、节点失效的判定及恢复相关的问题、以及我认为可以优化的地方。接下来面试官问我看过哪些java方面的书,熟不熟悉设计模式,唉,说来惭愧,java的经典书籍(如Core Java、Thinking in Java、Effective Java、设计模式相关的等)我真没看过几本,设计模式也只是知道mvc和dao,还是在康明斯实习的时候用JavaBean+JSP+Servlet做的项目,并没有真正用框架做过大型项目。面试官让我写个实现单例模式的类,所谓单例模式,就是一个类只能产生唯一的实例,无论如何调用此类,都只返回该实例,而不能产生新的实例。我思考良久(悲伤),写了下面的实现:

class A
{
    static A a = new A();
    A() {}
    static A get()
    {
        return this.a;
    }    
}

可惜,只对了一半,因为我无法保证产生一个新实例。通过构造器还是能够创建新的实例。。。。。。。

而我当时实在是想不出怎么解决,很糗。。。。面试官给我做了补充:

class A
{
    private static A a = new A();
    private A() {}
    public static A get()
    {
        return this.a;
    }    
}

看到答案后,我狂晕,我竟然把public、private这种关键字忘得一干二净,充分暴露了我研一这一年编程少的可怜至极(部分原因是由于课题性质,部分原因是自己没主动练习)!!!!

 

接下来,面试官问了数据库方面的知识,可数据库我压根没准备,但是简历上写着了,面试官问我也只能硬着头皮回答acid特性是什么、分别是什么意思等。ac我想起来了,是原子性、一致性,可id这俩隔离性和持久性我可是真想不出来。。。。现在想来,真悲剧啊!!!!!

二面面试官基本上没问什么问题,就让我写快速排序代码,我是没写出来,只是阐述了下排序思想。。。。。。还问我会不会flex,oracle用过没等等。。flex我没用过。。。oracle自己用过。。

三面面试官又问了我hadoop有什么可以改进的地方,答的也是一般般吧,然后是一些项目经历。。。。这些就是自己对面试官解释了,不多说了。。。。

 

总结下这次面试,可以用糟糕、炮灰、失败来形容,可当时我的自我感觉却很好,真不知为何,想在回想起来,真觉好囧!!

至今未给我通知,可见我的这次面试是彻底失败了!!!

 

我的功力还不够深厚啊,继续好好修炼吧,失败归失败,机会以后还会有的,我要做的是抓住机会,充实自己,充分准备!

为自己加油吧!

你可能感兴趣的:(总结一下10月18号在VMware的面试吧)