2018秋招面经-Java开发工程师(网易跨境电商事业部)

由于昨天在简书上先发了自己23号的面经,所以就直接复制过来了。里面的markdown标签也没改。可以直接在这里看,或者是到我博客里面看(博客里面贴了一点猪厂的图)。Orz…… http://www.jianshu.com/p/be015178b2a3?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-timeline&from=timeline&isappinstalled=1 利益相关:2018届十八流师范类大学网络工程专业本科生,应聘的是猪厂杭州的跨境电商事业部,也就是考拉海购。 之前看了这么多别人的面经,今天趁着还没把昨天面试的问题忘光,赶紧写出来分享一下攒攒人品。 #####总体感受 昨天在猪厂呆了一天,感觉环境还是非常nice的----园区虽然不大,但是里面设施齐全:免费的食堂、健身房、咖啡吧、邮局、银行、考拉和严选的线下实体店以及网易农场的水果店等等。 早上拿着面试短信进公司大门的时候行政小姐姐对我这种面试安排在下午结果早上就过来了的同学表示非常的惊讶,然后问我为啥这么早就来了。我也不能说我是想来蹭饭的吧?唉,只好说是因为买的早上到杭州的火车票,下了火车没哪里去就直接过来了。她一脸不相信的样子(用家乡话来说她可能打心底就觉得我是个要佬吧 哈哈哈哈)然后放我进去了,并且叮嘱我不许乱跑,只能呆在C栋的一楼。嗯,结果我转眼就溜进餐厅吃早餐了。 后来上午在咖啡吧稍微准备了一下,看了看项目代码然后随便逛了逛,中午吃完饭就去等面试了。 ###一面(50分钟左右) 一面面试官看起来还是挺和蔼的,先让我做自我介绍然后他一边看我的简历。 *问题列表* - 我看你简历上写到了熟悉JVM虚拟机运行机制,你能给我介绍一下Java虚拟机运行时数据区域吗? >于是我就向他要了张草稿纸,把运行时区域画了下来比较全面地讲了一遍,并且把Java虚拟机中的一些东西和底层操作系统中的东西作了以下对比,后来面试官点了点头,就问下一个问题了。 其实我对Java虚拟机还是蛮熟的,看了很多关于这方面的知识。 - 我看你对虚拟机挺了解的啊,垃圾回收你了解吗?给我讲讲 >我先讲了下内存布局中的新生代、Survivor区域以及老年代的划分,然后讲了下对象动态年龄判断、分配空间担保等。接着从引用计数法开始讲,后来我说虚拟机中一般都不会用这个垃圾回收算法了,然后面试官打断了我让我直接从可达性分析开始介绍。我又把GC Roots的判定,哪些对象可以作为GC Roots、G1垃圾收集器的回收过程等讲了一遍。面试官看起来比较满意,就没继续深入地问虚拟机相关知识了。 在这里要强烈安利一本关于垃圾回收算法的书,是一个日本作家写的,R大在知乎上也安利过这本书。(在这里要感谢@zpauly去狼厂实习的时候没把这本书带走而是留在了寝室,我正好前两天翻了翻,还了解了一下保守式垃圾回收和增量式垃圾回收) - 你说你阅读过某些主流WEB框架的源码(Spring IoC和AOP),那么你告诉我IoC中会有AOP吗? >额...之前还这没想过这个问题,因为这两部分我当时都是分开来看的,并没有总结它俩之间的联系。后来我说AOP中要生成***对象,而由于控制反转的存在,***对象的生成以及其生命周期的管理工作肯定是需要IoC容器来完成的,所以我觉得它俩之间有一衣带水,紧密相连的关系。 - 那好吧,你说说看BeanFactory和FactoryBean有什么区别? >我说BeanFactory定义了IoC容器最基本的形式,相当于在Java语言中的Object一样,是所有IoC容器的基类。我们在实际进行框架开发的过程中不会直接拓展BeanFactory,而是用它的子类DefaultListableBeanFactory。然后我在描述FactoryBean的时候不知道怎么组织语言,说了一堆之后面试官说:你这说了等于没说嘛。后来还被吐槽到底有没有认真看过源码。我晕...后来面试结束之后我觉得应该把FactoryBean描述为类似于一个工厂方法中生成对象的一个东西。 - AOP中动态***的实现机制你了解吗?给我说说原理。 >一开始我以为面试官直接让我说底层实现机制,稍微讲了下JDK动态代码实现方式我就开始讲它的源码了,后来面试官说没让我说源码,只是看下我知不知道怎么用。然后我就把JDK动态***以及CGLIB动态***讲了一下。因为前几天刚写了博客,所以非常熟悉。 - 你说你熟悉Mysql,讲一讲吧 >这里讲了一些很基本的东西,包括ACID、隔离等级、Myisam和Innodb两种引擎、Innodb索引的底层实现(b+树)、b+树的原理、然后拓展地讲了下b树和b*树,说了它们的优势劣势。在我后面讲项目的时候还提到了封锁协议以及封锁等级等等。 - 你这个秒杀系统还挺有意思的,我们来说说这个吧 >网购模拟秒杀系统是我之前学习了大型网站架构以及系统优化相关知识之后动手实现的一个小Demo,由于面的是考拉,所以之前又把项目好好看了看。面试的时候谈了很多关于系统优化、并发削峰以及流量控制、数据冷热备份的问题。 后来面试官就说可以了,然后让我过十分钟去前台问有没有面试。因为感觉一面表现蛮好,我就找了个地方又把项目代码看了一遍,因为怕二面深入地问项目。 ###二面(20多分钟) 二面真的是非常迷.....因为全程都在问算法题,后来和zby学姐一起吃晚饭的时候交流了一下,我们都觉得二面面试官是做数据挖掘或者是大数据方向的。 - 你做个自我介绍吧,我先看下一面面试官对你的评价。 - 一个链表,求中间结点 >第一题还挺简单的,leetcode上很多和链表有关的题目都会用到这个,很快就写出来了。 - 有两个int类型的数a和b,你能写出几种交换它们值的办法?越多越好 >中间变量、异或、用两数和加减运算(这里可能会发生整形溢出) - 一个1TB的文件,你有什么最快的办法能够求出重复次数最多的TOP5行数据? >这题答得不好。。 - 给你1到100万的连续整数,我从中取出一个数然后打乱数组,你给我求出被取出的是什么数。这题真的很迷。。我一开始说排序之后遍历,他说达不到他的要求,于是我就知道想要时间复杂度为O(n)的答案。我就一直在往二进制异或之类的方面靠,后来还是没答出来。结果今天早上突然想到一个用高中知识完全可以解决的办法:用等差数列求和公式求出1到100万的和,然后再一一减去数组中的数字,就可以求出被取出的数了。 二面之后心里十分的忐忑,心想肯定得GG了,结果去前台问了下说还有hr面。 ###hr面 hr面就比较轻松了,就像聊天一样。 - 做个自我介绍吧(主要是校内生活、竞赛经历、奖学金、学生干部、辩论队、专业学习等) - 你是网络工程专业的学生,其实培养方案不太侧重软件开发吧?说说你平时都是怎么进行自学的啊? - 为什么不考研? - 之前投过其他公司吗? - 这几个项目中你主要承担什么角色? - 如果拿到了offer什么时候可以来实习? 以上。
全部评论
手机上直接发的,也没排版 大家凑合着看吧
点赞 回复
分享
发布于 2017-08-25 16:49
我也是网络工程的,差距这么大,
点赞 回复
分享
发布于 2017-08-25 18:17
联易融
校招火热招聘中
官网直投
好厉害
点赞 回复
分享
发布于 2017-08-25 18:54
感谢分享,感觉问的都挺基础的
点赞 回复
分享
发布于 2017-08-25 22:50
求秒杀的代码可以不
点赞 回复
分享
发布于 2017-09-05 02:12

相关推荐

2 52 评论
分享
牛客网
牛客企业服务