最代码官方的gravatar头像
最代码官方 2017-05-03 21:38:10
春招java面试经验总结

春招java面试经验总结

原文:http://blog.csdn.net/u012877472/article/details/71036561

作者:Ezioooooo

    4月份折腾了一个月,本来打算一周更新一次的设计模式也没有更新,完全让给了春招的实习招聘。那就总结一下我的春招吧。 
我的春招只能用一个词来形容:惨不忍睹。好几个公司的笔试都过不了,不过这不怪我啊,笔试出的题太抠细节了。唯一笔试过了的公司就是腾讯,估计是笔试的要求比较低。 
3月28日腾讯内推截止,本来有同学在腾讯可以内推的,但是估计自己的简历筛选都没有过,连一个内推的面试都没有。这样的话只能安安静静的按照春招的流程来了。4月3日笔试,不得不吐槽,虽然腾讯公司用C++比较多,但是也招Java岗啊,我投的Java后台开发,可是笔试中的30道选择题竟然绝大多都是关于C++的,只有一两道关于Java的,而且题目还特长!还好开学的时候啃了一本《C++面向对象高效编程》,大学前三年也一直使用C++编程,对C++还有一些了解。没想到笔试竟然过了。 
4月11晚上八点多给了通知,让13号上午去面试。终于松了一口气,本以为自己的笔试都没有过呢。

4月13日:一面

我是上午10点半面试的,面试官很好,首先是自我介绍,两分钟的时间。下面是具体的问题:

  1. 知道跳表么?答曰知道。好,把跳表写在这张纸上。呃,我只知道跳表是什么,不会写,orz。然后这个问题就过去了。
  2. 介绍自己的项目。
  3. 手写代码,判断两个树时候相同(结构相同,内容相同)。很简单,两分钟之内就写完了,这个问题也过去了。
  4. 看我的简历。你以前一直使用C++啊,为什么后来转Java了?答曰Java是自学的,后来越学越感兴趣,就继续深入下去了。问那既然C++用了那么久你怎么写的是了解呢?答曰相比于Java,对C++了解的程度不如Java。
  5. 那你再写个代码吧,实现冒泡排序。很简单,两分钟内写完了。面试官很细心,自己手动按照我的代码走了一遍,确定没问题了才继续。
  6. 知道cookie和session的区别吗?
  7. 你都知道哪些设计模式?

估计面试官是比较熟悉C++,而对Java不太了解,就没什么问题了。面试官说,现在还有点时间,我们再说说别的吧。你读过什么书吗(我说看过《深入理解Java虚拟机》和《并发编程的艺术》)?阅读过什么源码吗(我说阅读过jdk的一些源码,还有Disruptor的全部源码和spring的部分源码)?(这些问题我的回答面试官都记下来了。) 
接下来的半个小时我和面试官一直在讨论关于Disruptor的问题。这样一面就结束了,一共52分钟。 
之后面试官就问了一些实习时间,和我有什么问题吗。关于我问的问题以及面试官的回答会在后面介绍。 
感觉一面还是很简单的,没有没答出来的问题。

4月15日:二面

一面结束后直到晚上9点多微信的状态才由初试变为复试。并在第二天的上午通知15号上午进行二面。 
下面是主要的问题:

  1. 自我介绍。
  2. 介绍项目。
  3. boot loader知道么。
  4. 画出进程的状态转换图。
  5. 进程间通信的方式。
  6. 内核态和用户态的区别,为什么要这样划分,如果不这样划分你觉得理由是什么。
  7. 说说你知道的几种设计模式。
  8. 问了一个实际的问题,现在有1000万张像素个数相同的图片,要么是白色要么是黑色,其中白色图片很少,找出所有的白色图片。(其实就是遍历一次就够了)

好像就这么多问题,感觉也不是很难,只有boot loader那个真的不知道。之后和面试官就像聊天似的聊了起来,比如高考多少分啊,家是哪里的之类的。 
二面一共40多分钟,然后面试官说你先到楼下签到的地方等一下。我也不知道要干嘛,就去楼下等着了。

4月15日:HR面

等了将近一个小时,就来了个通知,要我去面试,原来状态已经变成HR面了。就这样莫名其妙的通过了二面。 
HR并不是漂亮小姐姐,而是一个男生。问的问题也都是生活中的问题,这里就不细说了。不过有个问题我觉得还挺难回答的,就是你对于BAT这三家公司怎么看。之前没有想过这个问题,就对三家公司都夸了一遍。当然,重点要突出腾讯的好。

HR面试之后直到第二天状态才变成“你已完成所有的面试”。放下心了。 
之后就是漫长的等待,每天都会好几次查看微信的状态,也会刷牛客网的讨论区,看看有么有什么新进展。 
直到4月27号,别的部门比如SNG和TEG等都发offer了,我的OMG才发了一条短信,说我已经进入offer池,会在五一假期前后给最终的结果,感觉像是进了备胎池。 
第二天(28号)陆陆续续的收到了offer,而我竟然错过了下午的HR的电话!气! 
第三天(29号)上课,课上收到了HR的电话,直接冲出去了,说我通过了所有的面试。终于收到了offer。 
就这样,我的春招结束了。其实还没有,但是既然有了腾讯,别的就无所谓了。

那么接下来就做一下总结吧。

1. 项目没有你想的那么重要

简历上最好不超过一页,这样算来其实能写上的项目没有很多,也就两三个。但是没有必要写太多。 
我有个同学为了让简历好看一些,写了从大二实习到课程作业到毕设的一共四个项目,涉及到病毒分析、Android开发和Web开发的方方面面,这样给人的一个感觉就是没有专一。一次面试的时候面试官就说,看了项目经历感觉你没有找到自己的方向。所以第一个要注意的问题就是,简历上所写的项目经历最好是同一个技术路线上的。 
二面的时候,面试官问我有什么问题,我问的是,作为一个学生如何在学习和项目之间找个平衡。面试官说不需要平衡,作为学生你们只需要好好学习就成,项目经历将来工作了有很多机会让你们接触。 
所以,第一个感觉就是,好好学习,项目经历其实没有你想象的那么重要。

2.语言重要吗

由于腾讯基本上使用的是C++,而我熟悉的是Java,面试官也问过这个问题,说你能转C++吗。我说我大学前三年使用的都是C++,转过去没有问题。面试官也说,语言没有那么重要,不一定就会Java只能投Java岗。 
其实语言是相通的。比如有个同学面试被问到了Java中的多态是怎么实现的,这和C++中的多态实现方式很相似。所以,其实语言也没那么重要,只要花一段时间,可以很容易掌握一门语言的使用。 
但是需要注意的是,在面向对象编程语言中,至少要有一个语言能够达到深入了解的程度。只有这样,才能在学习另一个语言的时候举一反三,触类旁通。还有就是,对于专业技能来说,不管你掌握到什么程度,最好不要写“精通”。有个同学面试的时候简历上写的是精通C++,结果面试官用“我用了10年C++也没敢说自己精通”一句话给怼回去了。 
如果真的很了解的话,写“熟练”就可以;如果不是那么了解,写“了解”即可。

3.一条深入的技能树很重要

一面的时候我问的问题是,作为一个过来人,您对我们这些即将毕业进入社会的学生有什么建议吗? 
面试官想了一会说,好好学习。后来补充说,你们现在作为学生,对于某个方向要深入了解,先深度,再广度。 
其实这是一个很中肯的建议。想想看,现在好多同学的简历上写了做过什么什么东西,其实学生做的东西在面试官看来大多数就像玩具一样,没什么技术含量。哦对了,有个同学就是因为项目的原因挂了二面。是这样的,面试官二面的时候一直在问同学的项目方面的问题,本来是很好的,项目的话自己能说的就比较多。但是当面试官对同学的项目提出一些质疑的时候我这个同学就和面试官争执起来了(其实就是回怼了),卒。 
感觉最重要的就是点好自己的技能树。既不能什么方面都不懂,又不能任何方面仅仅浅尝辄止。所以,想好自己真正感兴趣的地方,只对这一个山头进行攻击,深入下去,比每个方面都知道但不深入强太多。

暂时想到的就先这么多,以后有补充的话就继续更新。


打赏
最近浏览
Ma2020  LV6 2021年2月28日
hw272619  LV6 2020年4月4日
栗劲松  LV2 2019年11月26日
hadoopCJ  LV5 2019年9月25日
一天一点爱恋  LV5 2019年4月7日
JoyKinG  LV19 2019年3月13日
lryepoch  LV7 2018年10月29日
最代码酒酒  LV20 2018年8月31日
Dz______  LV2 2018年8月3日
lxgang9165 2018年5月15日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友