首页 > 笔经面经 > 校招季一路走来面经分享

校招季一路走来面经分享

头像
fighter_code
编辑于 2017-07-18 18:27:17
回复17 | 赞 24 | 浏览16140
首先,感谢牛客网这个程序员的交流平台,无论是招聘信息还是面经都使自己受益匪浅。于是,我也想把自己求职阶段的面试经历分享给大家。对于技术不够过硬的我求职的确是一个很艰辛的过程,因为面临“高不成,低不就”的尴尬。但是,随着经历的挫折,煎熬,内心会更强大,于是找到了自己的方向。
实习招聘的时候本人一心想着BAT(因为毕竟是985院校的本科+硕士),对于其他的互联网公司了投了,但是总是感觉不是很想去。虽然过程很艰辛,被各种公司虐。但是,最终算是目标实现,拿到了阿里的实习offer(不过是备胎进去的,在阿里实习一段时间,转正面试阿里今年只要A,面临十五六个人争取三个HC,我还是不出意料的被淘汰,还是太菜)。因为本人是java研发方向,而实习招聘已经很久了,大致内容如下:

1. 阿里实习招聘面试
一开始肯定会先问个人的研究方向,论文,项目,然后从这些内容中找出一些问题来考察我们。然后java基础大致如下:
(1)HashMap和HashTable的区别,及其实现原理。ArrayList,LinkedList 和Vector的区别和实现原理。TreeMap和TreeSet区别和实现原理。ConcurrentHashMap实现原理(锁分离技术)。
(2)问jvm内存分代机制(会问分为那几个代,各个代特点),分代回收的优点(这个问了很多次)。
(3)String和StringBuffer,StringBuilder区别和联系,String为啥不可变,在内存中的具体形态。
(4)java中多线程机制,实现多线程的两种方式(继承Thread类和实现Runnable接口)的区别和联系。
(5)java线程阻塞调用wait函数和sleep区别和联系,还有函数yield,notify等的作用。
(6)java中的同步机制,synchronized关键字,锁(重入锁)机制,其他解决同步的方volatile关键字ThreadLocal类的实现原理要懂。
(7)java中异常机制。
(9)comparable接口和comparator接口实现比较的区别和用法,Arrays静态类如下实现排序的。
java基础的差不多就这么多,网络方面TCP,HTTP要明白,进程和线程的却别联系(线程拥有哪些自己的资源,这个问题面腾讯时直接说错了,然后就挂了),算法题啥的我忘的差不多了,还请大家见谅!
从阿里离职后开始参加校招找正式工作,做笔试题时才发现大神多厉害(一个大神同学,笔试编程题基本十分钟一道)。面了美团,滴滴,华为(坑人啊),京东,下面是面试的一些问题:

2. 美团点评
一面:面试官人很好,我们从我的研究方向开始讨论,然后因为项目中用到了BitSet,,说以面试官让自己实现一个BitSet,因为没看过源码,但是看过hashMap等相关源码,所以在实现中参考了一些技巧,并在讲解的时候突出了这一点。然后问了java的基础如String,StringBuffer,StringBuilderd的却别等。接着讨论了多线程同步相关的,面试官除了几道题,问是否线程安全,可能的输出是啥。然后问了volatile实现原理之类的。一面面了差不多一个点。
二面:面试官看简历问实习做过啥,然后讲了实习做过的东西,面试官很懂我实习做的东西,说以就问了很多storm,zookeeper相关的知识。接着让写一个实时处理日志的拓扑代码。然后问了java的知识,问我protected权限能否被包外访问(我当时有点蒙竟然说能,出来就后悔了),然后问boolean占几个字节,然后问了spring的一些知识,如:有哪些注入方式等。之后写一个汉诺塔问题,打印出转移路径,接着写一个二叉树前序遍历的代码,最后让写一个多叉树实现,并层次遍历的代码,连写四个代码,有点蒙。还问了sql,让写了一个sql,具体忘了。
三面:面试官应该是主管之类的,态度很冷淡,看会儿简历问一个问题,看简历的时候他也不说话都有点冷场,我当时很害怕,主要:网络浏览器访问一个网址发生了什么过程,实习经历,sql一二三范式(不会),会不会离散数学,还有其他的,记不住了,因为当时感觉面试官太冷了。最后出了两道算法题,还好代码写的比较好。第一道题是一个字母组成的字符串,对该字符串字母序进行排序,大写在小写前面,时间复杂度O(n),如AaB是有序的,ABa是无序的。第二道题计算f(x,n)=x+x^2+.....+x^n,要求乘法次数最少。
HR面,感觉HR特别好,聊得很开心。

3. 滴滴
一面:第一次遇到技术面女面试官,面了一个半点。先让我讲了自己的研究方向,讲了论文的方案,面试官听得很认真。接着就是各种算法题,目测不少于十道,两个长度为n的排好序数组,计算中位数(总是让我证明我说的二分法为啥对,这就尴尬了,怎么证明)。一个大文件,里面是很多字符串,用最优的方式计算出一个字符串是否存在。抛硬币正反面概率一个1/3,一个2/3,设计一个随机数生成器以1/2概率生成1,。改为1/n如何设计。一个排好序的1,2,....n的数组,其中一个数变为-1,如何找到这个数,至少用三中方法。还有好几道算法题,有点想不起来了。
二面:开始面试官跟我讨论了storm实时处理框架相关的知识,然后问了java的知识,jvm垃圾回收,问的很细,当时有点蒙,给了一个场景,在进行垃圾回收的时候qps会降低一半,这时候系统如何处理请求。出了一道sql题目,让写语句(感觉自己写的很好的样子)。spring mvc问了点相关的。因为那天太累了,好多题忘了,面了大概一个小时。
三面:也是首先讲了自己的研究方向和研究内容,接着问我实习做了啥,面试官非让我解释其中的一个业务概念,而我怎么也解释不清。后来面试官就问为啥实习的时候会让你参与这么重要的工作,实习生不该是干杂货嘛,我也不知道怎么说了,感觉跟面试官交流有问题。但是,接下来面试官问了多线程,实现多线程的方式,区别和联系。问了锁机制,除了一个ThreadLocal应用场景,一开始我想到了用ThreadLocal但是没敢说。问了浏览器如何实现的免登陆之类的功能,进而问了cookie和session相关的知识。进程与线程的区别相关的知识。差不多就这么多。
HR面:HR人特别特别好,还说在结果没出来之前可以随时打她的电话联系。

4. 华为
面经没啥,因为华为面试很水(个人感觉)。

5. 京东
首先声明,京东曾经是我特别鄙视的一个互联网公司,但是当时疯狂投简历就投了京东。因为是实习结束后第一个过的笔试,所以特地赶到北京面试,但是初试被挂。面试官连自我介绍都不问,没机会介绍自己的研究内容,他就开始问我的项目(因为我没有介绍研究内容,他怎么可能明白项目工作原理)。于是,就开始问实现的系统最多处理多少文件(系统就是用来评估论文的性能,因为实验室机器资源有限,所以最多用到了8000个文件)他很不满意。接着问mysql索引相关的知识,索引在什么情况下失效(很久不接触mysql了,就忘了),接着看到实习经历,因为是阿里,感觉他有点仇视的心里,很不屑(不知道是不是京东内部仇视宣传啊)。反正初试就挂了,京东是实习结束第一个面试,当时很失落。
找工作这段时间确实经历很多,在阿里实习接近尾声的时候心里特别的烦,感觉辛苦实习两个月还不能留下,个人的感情也经历也变化。这段时间感觉是最黑暗的一段时间,但是这或许就是每个人要经历的轨迹,总有一扇门是为我们打开的。最后,感谢陪伴的本科挚友,自己的十年挚友(她肯定看不到,因为非互联网行业),感谢杰伦歌曲的陪伴。算是走出校门的挫折,感谢让自己变得更加坚强,乐观,未来一定会更加美好!
祝大家找到心仪的工作!

17条回帖

回帖
加载中...
牛客网,程序员必备求职神器
QQ群:169195721
微 信:www_nowcoder_com 关注
微 博:牛客网 关注

扫一扫,把题目装进口袋