2018秋招面经-Java开发工程师(网易跨境电商事业部) 2技术面+1hr面

2017年9月5日更新:猪厂offer已到手.

利益相关:2018届二本师范类大学网络工程专业本科生,应聘的是猪厂杭州的跨境电商事业部,也就是考拉海购。

之前看了这么多别人的面经,今天趁着还没把昨天面试的问题忘光,赶紧写出来分享一下攒攒人品。

总体感受

昨天在猪厂呆了一天,感觉环境还是非常nice的----园区虽然不大,但是里面设施齐全:免费的食堂、健身房、咖啡吧、邮局、银行、考拉和严选的线下实体店以及网易农场的水果店等等。

虽然我是下午面试,但是早上就到了园区,先感受了一下食堂

早上拿着面试短信进公司大门的时候行政小姐姐对我这种面试安排在下午结果早上就过来了的同学表示非常的惊讶,然后问我为啥这么早就来了。我也不能说我是想来蹭饭的吧?唉,只好说是因为买的早上到杭州的火车票,下了火车没哪里去就直接过来了。她一脸不相信的样子(用家乡话来说她可能打心底就觉得我是个要佬吧 哈哈哈哈)然后放我进去了,并且叮嘱我不许乱跑,只能呆在C栋的一楼。嗯,结果我转眼就溜进餐厅吃早餐了。

面试大厅
面试叫号前台

后来上午在咖啡吧稍微准备了一下,看了看项目代码然后随便逛了逛,中午吃完饭就去等面试了。

一面(50分钟左右)

一面面试官看起来还是挺和蔼的,先让我做自我介绍然后他一边看我的简历。
问题列表

  • 我看你简历上写到了熟悉JVM虚拟机运行机制,你能给我介绍一下Java虚拟机运行时数据区域吗?

于是我就向他要了张草稿纸,把运行时区域画了下来比较全面地讲了一遍,并且把Java虚拟机中的一些东西和底层操作系统中的东西作了以下对比,后来面试官点了点头,就问下一个问题了。
其实我对Java虚拟机还是蛮熟的,看了很多关于这方面的知识。平时在学习的过程中也写了不少关于这个的博客,对这部分知识不太熟悉的同学可以参考一下我的博客。
深入理解Java虚拟机---自动内存管理机制
Java虚拟机规范(Java SE 8版)读后总结

  • 我看你对虚拟机挺了解的啊,垃圾回收你了解吗?给我讲讲

我先讲了下内存布局中的新生代、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描述为类似于一个工厂方法中生成对象的一个东西。
下面是我之前写的相关博客:
Spring源码探究:IoC容器初始化过程详解
Spring源码探究:IoC容器在Web容器中的创建及初始化
Spring源码探究:深入理解Spring AOP的设计与实现

  • AOP中动态代理的实现机制你了解吗?给我说说原理。

一开始我以为面试官直接让我说底层实现机制,稍微讲了下JDK动态代码实现方式我就开始讲它的源码了,后来面试官说没让我说源码,只是看下我知不知道怎么用。然后我就把JDK动态代理以及CGLIB动态代理讲了一下。因为前几天刚写了博客,所以非常熟悉。
深入理解JDK动态代理机制
深入理解CGLIB动态代理机制

  • 你说你熟悉Mysql,讲一讲吧

这里讲了一些很基本的东西,包括ACID、隔离等级、Myisam和Innodb两种引擎、Innodb索引的底层实现(b+树)、b+树的原理、然后拓展地讲了下b树和b*树,说了它们的优势劣势。在我后面讲项目的时候还提到了封锁协议以及封锁等级等等。
可以参考下我之前的博客,我觉得总结的挺完善的。
数据库相关知识回顾与总结

  • 你这个秒杀系统还挺有意思的,我们来说说这个吧

网购模拟秒杀系统是我之前学习了大型网站架构以及系统优化相关知识之后动手实现的一个小Demo,由于面的是考拉,所以之前又把项目好好看了看。面试的时候谈了很多关于系统优化、并发削峰以及流量控制、数据冷热备份的问题,这里不详细讲了。感兴趣的同学可以买下面这两本书来看看。
大型网站技术架构
大型网站系统与Java中间件开发实践

后来面试官就说可以了,然后让我过十分钟去前台问有没有面试。因为感觉一面表现蛮好,我就找了个地方又把项目代码看了一遍,因为怕二面深入地问项目。

二面(20多分钟)

二面真的是非常迷.....因为全程都在问算法题,后来和zby学姐一起吃晚饭的时候交流了一下,我们都觉得二面面试官是做数据挖掘或者是大数据方向的。

  • 你做个自我介绍吧,我先看下一面面试官对你的评价。
  • 一个链表,求中间结点

第一题还挺简单的,leetcode上很多和链表有关的题目都会用到这个,很快就写出来了。

  • 有两个int类型的数a和b,你能写出几种交换它们值的办法?越多越好

中间变量、异或、用两数和加减运算(这里可能会发生整形溢出)

  • 一个1TB的文件,你有什么最快的办法能够求出重复次数最多的TOP5行数据?

这题答得不好。。

  • 给你1到100万的连续整数,我从中取出一个数然后打乱数组,你给我求出被取出的是什么数。

这题真的很迷。。我一开始说排序之后遍历,他说达不到他的要求,于是我就知道想要时间复杂度为O(n)的答案。我就一直在往二进制异或之类的方面靠,后来还是没答出来。结果今天早上突然想到一个用高中知识完全可以解决的办法:用等差数列求和公式求出1到100万的和,然后再一一减去数组中的数字,就可以求出被取出的数了。

二面之后心里十分的忐忑,心想肯定得GG了,结果去前台问了下说还有hr面。

hr面

hr面就比较轻松了,就像聊天一样。

  • 做个自我介绍吧(主要是校内生活、竞赛经历、奖学金、学生干部、辩论队、专业学习等)
  • 你是网络工程专业的学生,其实培养方案不太侧重软件开发吧?说说你平时都是怎么进行自学的啊?
  • 为什么不考研?
  • 之前投过其他公司吗?
  • 这几个项目中你主要承担什么角色?
  • 如果拿到了offer什么时候可以来实习?

以上。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,911评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,014评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,129评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,283评论 1 264
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,159评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,161评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,565评论 3 382
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,251评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,531评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,619评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,383评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,255评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,624评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,916评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,199评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,553评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,756评论 2 335

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,085评论 25 707
  • 写了个显眼的标题,就真得说几句有用的话。 5月份一个很偶然的机会,加了叶神的微信,还收到了祝福。一激动就承诺说写...
    batbattle阅读 13,373评论 1 57
  • 打了一上午的游戏,有点昏头昏脑的我走在校园阴凉的小道上,不由自主的觉得有种想完全把握自己的想法。 来到这所陌生的大...
    苦难人间阅读 490评论 0 0
  • (videos)"International Conference on Learning Representat...
    hzyido阅读 429评论 0 0
  • 相机里面的焦距 指:镜片中心到感光原件(底片)的距离。 镜头焦距=底片对角线 则镜头为标准镜头,接近人的视觉印象 ...
    浅浅君子阅读 294评论 0 0