2015年3月份有投阿里巴巴研发工程师JAVA岗,当时是内推的,内推免笔试,直接到就是电话一面,那段时间周围大多数内推的同学都接到了电面,由于是过年刚来几天就开始面试,所以大部分同学处于未准备好的阶段!一些基础比较牢,平时爱钻研技术的同学,在内推阶段就已经拿到Offer了!自己当时电话面试比较紧张,因为是第一次找工作面试(以前本科没经历过找工作面试),面试官(国际事业部)也就问了什么时候能来实习,但是自己说是最快7月初,然后以最少实习6个月为借口终止了本次面试。之后自己只好老老实实准备阿里实习生招聘!

一、笔试

      阿里2015年笔试武汉地区采取线上笔试的模式,具体时间官网有通知(阿里实习生招聘流程),15年是4月2号晚上7:00--9:00在线笔试,笔试分20道单选题(也可能25道,记不清了),40分钟做完,每题做完可以返回修改!单选题主要考些逻辑问题、概率问题,代码输出结果问题,还有些基础题,上网搜下会有很多。三道大题,一道算法题,比较简单,一道关于进程同步的算法题,类似生产者、消费者问题,还有一道关于商品购物的设计题设计数据库表。当时第一次在线笔试很多规则不懂,比如你可以让周围人帮你一起做(阿里笔试时没摄像头!腾讯笔试有摄像头比较严),因为选择题时间太紧,往往一道题你得想5--6分钟,很难按时做完。后面大题是附加题,做一下对自己很有帮助,推荐一个题库:http://www.itpub.net/thread-1822707-1-1.html。笔试结果2015年4月9号到12号出来,官网都有通知!当时周围同学大多阿里笔试过了,预约阿里面试是在2015年5号--6号,按官网流程来!

二、一面

我预约的是2015年5月6号下午3:45的面试。简历一份,通关卡一份必带!没想到到现场签完到3:13就开始一面了,一面是在一个大的会议厅里面进行的,里面有40个人一起进行面试,每个面试官都有自己的一张桌子,面自己的面试官从面相上看年纪比较大(超过30岁),不过一般都比较和蔼,先是暖场,聊一些比较轻松的话题!大概知道自己也放松之后进入主题!

1.自我介绍

自我介绍貌似在大多数面试开场都会有,私下自己要有所准备,要突出重点,毕竟技术面,重点说自己会哪些技术,做过哪些项目,简要介绍项目,他会问你在项目里面担任的角色以及你的贡献在项目里面占的比重,还有就是项目里面觉得用了哪些技术,详细介绍技术原理,因为自己简历里面有大篇幅描述项目,所以面试官问项目比较多,之前自己面腾讯一面的时候也是大多问的项目!然后自己把自己觉得拿的出手的可以讲得东西说了下。目前自己做的项目感觉比较新颖就是做了个QQ第三方登陆,之前腾讯一面也讲的这个,主要讲了下其实现原理(OAuth  开放授权原理),讲的时候思路要清晰,期间面试官问了此授权过程是基于Http还是基于Https实现的,接着问了Https协议的实现过程。之后问了自己项目里面还有那些自己觉得比较有难度或是能讲的,然后我把学长做的那块东西讲了下,由于当时实验室开例会的时候学长有讲他们所做模块的具体实现,所以自己凭着印象讲了下(平时多听,多想,对面试还是很有帮助的)。之后就是讲了下自己觉得可以讲的东西,也就是登陆模块用户账号密码该怎么加密存储的问题,上次腾讯有问这中自己特意总结了下(关于Web前端密码加密是否有意义的总结!)。期间有问对称加密算法和非对称加密算法的比较!面试完后自己看了看以前的总结,汗....当时自己把两种算法弄混了!至此项目讲完。

2.java基础知识

2.1开始就问String类型能否被继承,为什么?当时说是可以被继承的,因为String 是public的,接着他问了什么样的类型不能被继承,自己说被final修饰的类不能被继承,接着继续要自己讲讲final关键字!自己说了些JAVA编程思想上对final的介绍及从技术博客上看到的总结。当时自己把final读成finally,之后他在纸上写了如下代码:

try{
.....
return 1;
}finally{
....
return 2;
}

他问上面这段代码有问题吗,如果有问题会抛出什么异常?我当时回答是有问题,因为finally块最终都会执行,会抛出返回类型不明确的异常(这个回答有点二!)

-------------------------------------------------------------面试完后的思考-------------------------------------------------------------

面试完后自己对上面问题好好反思了下:

源码中关于String类定义如下:

public final class Stringimplements java.io.Serializable, Comparable<String>, CharSequence

好吧,String类是被final修饰的类,不能被继承(自己当时的回答是搬石头砸自己脚呀!)。关于上面代码块的问题,finally代码块包含return语句问题。

当finall块中包含return语句时,Eclipse会给出警告“finally block does not complete normally”,原因分析如下:
1、不管try块、catch块中是否有return语句,finally块都会执行。
2、finally块中的return语句会覆盖前面的return语句(try块、catch块中的return语句),所以如果finally块中有return语句,Eclipse编译器会报警告“finally block does not complete normally”。
3、如果finally块中包含了return语句,即使前面的catch块重新抛出了异常,则调用该方法的语句也不会获得catch块重新抛出的异常,而是会得到finally块的返回值,并且不会捕获异常。
结论,
finally 内部使用 return 语句是一种很不好的习惯,如果try中还有return语句,它会覆盖了try 区域中 return 语句的返回值,程序的可读性差
-------------------------------------------------------------面试完后的思考-------------------------------------------------------------

2.2接着面试官又在纸上写了如下代码:

x.equals(y) == ture;
x.hashCode() == y.hashCode() ?

关于equals()和hashcode()问题,很多公司都有问!大体会问

1.如果两个对象x,y    x.equals(y)==true;  那么  x.hashCode() == y.hashCode()  是否为真

2.如果  x.hashCode() == y.hashCode()  那么 x.equals(y) 返回什么

结论是:两个object 如果 equals() 相等,他们的hashcode也相等(前提条件是两个object 的 equals()方法没有重写);如果equals()不相等,他们的hashcode不一定相等或者不等;他们的hashcode相等或者不等也决定不了equals()相等或者不等。

期间还问了hashCode()返回值的问题。自己面试前有准备!还有得看看hashCode() 和equals()源码,讲讲为什么会出现这种结果(面试官主要期待这个)!

2.3接着问了大多数面JAVA研发工程师会问的问题!HashMap 里面put和get方法是怎么实现的!自己私下有看过写HashMap的博客,但是源码一直没来得及看,主要要讲清楚HashMap的存储数据结构,及存值取值的过程!(自己有些总结--java基础---HashMap与HashTable)

2.4 JAVA虚拟机里面内存分配、垃圾回收原理及类加载的问题在这期间自己完全可以占据主动说对这方面有所了解,面试官一般都会让你继续说下去!对整个面试而言可以加不少分。

3.算法

3.1问了个比较简单的单链表算法,寻找单链表中倒数第m个元素。

当时没写算法只是说了思想,用两个指针间隔m,同行即可。算法的一些异常情况也得考虑进去!(能手写算法更好)

3.2第二个算法问的是关于二叉排序树的问题,求二叉排序树里面任意两节点离他们最近的公共祖先或父节点!

当时也是说了思想,大概的讲了下!这种问题网上应该很多回答!

4.智力题

8个小球,其中一个比其它7个都重,其它7个一样重。给你一个天平,至少要称几次?

3次大概很多人会想到,我当时回答的也是三次。面试官让我想更优的方法,当时心急,时间短,2--3分钟得回复!所以没有想出来呀!

网上搜了下,答案如下:

从8个球中任意取2组3个球放在天平上称,
           如果重量相等,那么重的球必然在余下的2个球中,故将那个2个球放在天平上称即可; 
           如果有一边重,那么重的球必然在这一边的3个球里,
           再从这3个球中任意取2个出来称,
           如果一样重,那么重的球就是余下的那个球,
           如果一边更重,则便是这个球了.

小学智力题,哎........

5,闲聊

      之后就是一些闲聊的话题。

1.研究生期间你觉得哪门课程你自己比较感兴趣,为什么?  我回答的是体育

2.你有对自己将做过职业规划吗?

3.你对哪个领域感兴趣,说说你的见解,你平时是怎么关注这些领域的。

这种回答如实就好,也得自圆其说,千万不要回答“不知道!”

就此一面面完,大概50分钟左右,面试官让我去外面等通知!

三、二面+Hr面

一面完大概5分钟之后,就接到通过一面的短信。让稍等等待二面安排!也就几分钟时间就开始二面!阿里二面是两个人,技术和HR一起面。

1.先暖场,闲聊。然后是个自我介绍。之后直接技术面,问你觉得项目里面有哪些技术点,或是自己觉得自己有哪些亮点(比一般人牛的地方)。刚研一,也就经历了几个项目(大多是参与了下,没做多少事,其中一个花了很长时间在做倒是有些说头),java源码也没看过,框架现阶段只会用,懂其基本原理,没深究,至于项目技术,难点学长都已经搞定了,自己主要是协同开发和学习,当时心一凉,没啥亮点,就说了个Spring比较了解,然后继续深挖Spring实现原理,讲了下AOP,动态代理,反射之类的,自己都不是挖的特别深,直接露馅冷场!不过面试官还好,都是引导性的问一些问题,发现你大概水平,也就辗转其它领域。

2.技术面试官和Hr在这一面中都可以一起问的,期间问道我为什么会选择天猫事业部,说原因,自己说想鉴证天猫双11,技术面试官直接又开始让我说天猫双11涉及到那些技术性的问题,如果你作为一名开发者,会如何应对这些问题。大概就是想知道你对一些技术的敏感性,及是不是时刻在关注和学习新技术,既然自己基本功也就那样,那他们想了解的是自己是否有潜力,热爱并实时关注思考自己将来所想发展的领域。哎....当时也是回答的不太好呀!

3.然后Hr问我是否有关注过阿里对招JAVA研发工程师的要求。当时有点懵,看招聘的时候也没多在意,哎.....!也问过我至今看了多少本关于JAVA的书籍,以及自己觉得学的比较好的时哪一块,并谈谈自己的见解。问自己在研究生阶段有没有一个很好的规划,还有就是自己觉得有哪些事情让自己觉得比较骄傲的(又是亮点)。

二面+HR面大体围绕自身亮点和解决、分析问题的能力及对技术的敏感和热爱程度展开!

之后问我有什么问题想问的!

1.阿里马云先生说今年阿里出一人进一人是真的吗?

他们的回答是:社招是如此,校招和往年(2016年毕业实习生3000+ 阿里官方微博上的数据)一样,或许比往年招的更多。(面试官有让我和周围同学宣传下!)

2.当时知道自己面的不好,直接问对于自己今后的方向能否指明下?

2.1.想清楚自己想做什么,定位自己的方向,比如JAVA研发工程师,然后细化到更具体更有针对性的方向,就像研究生选择研究方向一样

2.2.自己现在能做什么,什么做不了,做不了该怎么办,该怎么学?

2.3.对一些现象,要从技术层面去思考,多想!

昨天面完二面+Hr面就让回去等消息,官网信息一直是“待公布结果!”不过昨天全部通过的同学都有短信通知5月7号上午9:00的阿里圆桌会议!也就相当于发Offer。5月6号晚上一直没消息。到5月7号上午也没收到信息,虽然官网结果是待公布,于5月7号5:08分公布,不过结果已经很明显了,已挂!

这次面试也是一个很好的经历,相对于腾讯的面试(1个月以前)而言,感觉自己在1个多月进步不少,以后找工作自己也有了明确方向!面试经验也有了不少!

自己的另一篇面经:   面试----2015腾讯3-4月实习生招聘(笔试,一面,二面)

面试----2015阿里巴巴5月校园实习生招聘(笔试、一面、二面+Hr面)相关推荐

  1. 网易嵌入式面试 2015年9月2日下午网易视频二面

    13:30分,面试准时开始,之前还是挺忐忑的,守着易信客户端,1:26分BSP面试官1发来消息,"你好,一会一点半开始",回复"在线,收到". 面试刚开始,看见 ...

  2. 2013年阿里巴巴实习生招聘笔试题目及解答

    有幸参加了2013年5月5日阿里巴巴的实习生招聘笔试,这次笔试的难度对我而言,前半部分不涉及算法的内容,都比较容易.而后面3道关于算法的习题都解答得很不好,暴露出来自己的一些问题.本人马上也要毕业了, ...

  3. 阿里巴巴淘系前端实习生招聘

    起止时间要求:2023-11-01~2024-10-31 招聘类型:实习生 面试地点:远程 招聘批次:阿里巴巴春季2024届实习生招聘 职位描述 1.负责集团技术平台的终端开发,通过合理的技术方案设计 ...

  4. 【IT企业笔试集】2013年阿里巴巴实习生招聘笔试题目及解答

    有幸参加了2013年5月5日阿里巴巴的实习生招聘笔试,这次笔试的难度对我而言,前半部分不涉及算法的内容,都比较容易.而后面3道关于算法的习题都解答得很不好,暴露出来自己的一些问题.本人马上也要毕业了, ...

  5. 百度2015实习生招聘笔试

    百度2015实习生招聘笔试 题目描述 在命令行中输入一个字符串,例如"aAfbgg",要求按照一定的规则计算此字符串拆分后字符的值相加后的总和值.规则如下: a与A值为1,b与B值 ...

  6. 微软实习生招聘笔试题目

    微软实习生招聘笔试题目 您好!以下是本次微软实习生招聘的笔试题目,请仔细阅读并认真答题: 注意:本次测试题目仅限本人阅读,请勿传阅他人.谢谢! 提交材料 1.不超过2页的说明书,包括算法,设计,使用说 ...

  7. 2011百度实习生招聘笔试试题---软件测试—测试方向(BJ)

    2011百度实习生招聘笔试试题---软件测试-测试方向(BJ) 来源: 周广陵的日志 第一大题  简答题 1.extern"C"{}是什么,它能起到什么作用? 2.介绍两种经典设计 ...

  8. 华为2018届校招勇敢星实习生招聘笔试+面试经历

    写在前面   之前一直在忙期末,最近才歇了下来,来总结一下之前参加华为2018届勇敢星实习生笔试+面试(研发类)并顺利拿到offer的经历.   我是在微信上投的Android研发实习生岗,很快就收到 ...

  9. 腾讯实习生招聘笔试题目

    2013腾讯实习生笔试题  一. 单项选择题 1) 给定3个int类型的正整数x,y,z,对如下4组表达式判断正确的选项() Int a1=x+y-z; int b1=x*y/z; Int a2=x- ...

最新文章

  1. windows系统服务器数据库,windows系统的服务器肿么访问数据库
  2. matlab程序eX2_2是什么意思,第2章 MATLAB程序设计
  3. 学习python的日常6
  4. pico park无法连接至远程服务器,picopark联机失败怎么办 picopark联机进不去问题解决方法...
  5. faster_rcnn c++版本的 caffe 封装,动态库(2)
  6. project template
  7. UITableView总忘记的
  8. 红橙Darren视频笔记 流式布局tagLayout measure layout方法学习 adapter使用 学习感悟
  9. 解决vSphere性能不佳的技巧
  10. Linux命令篇之history命令和alias命令
  11. louvian算法 缺点 优化_黑帽SEO、快排、白帽SEO的介绍与优缺点的对比
  12. java.net cidr接口_CIDR - xiaohuazi - 博客园
  13. 本科双非,考研压线上北大,总结一下我的复习过程,希望对考研er有点帮助!
  14. 歌曲影视随意赏计算机课件,世界影视音乐赏析课件.ppt
  15. sre_constants.error: unbalanced parenthesis
  16. 入选全球灯塔工厂 西部数据践行可持续发展承诺
  17. 【路径规划】基于粒子群算法机器人避障路径规划matlab代码
  18. beautifulsoup菜鸟教程
  19. Vue报错:VueCompilerError: Attribute name cannot contain U+0022 (“), U+0027 (‘), and U+003C (<).
  20. 中心极限定理-通俗理解

热门文章

  1. Arduino开发实例-DIY无声入侵警报系统
  2. 《我们恋爱吧》3完美收官,2022年聚仁影视9部恋综接档待播
  3. POJ1723 Soldiers 中位数
  4. setInterval和clearInterval
  5. 腾讯课堂视频保存教程
  6. js实现button标签转为click监听事件
  7. 从零开始搭二维激光SLAM --- 基于ICP的帧间匹配
  8. wgrib,wgrib2下载与ECWMF数据读取
  9. 区块链技术六大核心算法,读懂六大核心算法就变成区块链专家
  10. ADO.NET数据库应用开发 pdf电子书