暑期实习的面试备忘

又到了一年的春天,各大公司的暑期实习也约了起来。为了9月份能够更加从容地面对找工作,大家都纷纷加入到暑期实习的笔试面试当中去。本文旨在记录自己的一些教训,给自己形成一个备忘和努力目标。反正博客的人气也基本没有~我就自娱自乐了:)

一、网易

职位:Java公共技术开发(杭研)

网易的面试一天面了3轮,两轮技术面,最后一轮HR面。目前为止,结果还不清楚。

1. 一面

  • 关于异常捕获和处理,try…catch…finally。
  • JVM内存管理和垃圾回收算法。
  • 讲了一下我做的Android App,问我遇到的最棘手的问题及解决方案。
  • 给定100万个文件,文件中存放着很多字符串,用户要搜索某个字符串s,返回哪个文件第几行第几列含有s。设计一套系统,包括存储结构,搜索算法。
  • 你了解哪些设计模式
  • 手写代码。两个有序链表归并。

对于第四个题,我当时也没有什么很好的思路,就想把文件存到HashMap 中,这里面的Position就是自定义的类,对应匹配出字符串在当前文件中的位置。首先对文件进行遍历,然后使用KMP算法匹配字符串。让我把关键部分的几个代码写一下。一开始也是很懵逼,面试官真的很nice,一点一点引导。虽然最后还是感觉实现的效率不够高,但是总算是把这个系统自圆其说了。

关于最后一个手写代码题,就有点不好意思了。我本以为很简单。。。但是各种小细节没处理好。在面试官提示下,花了一些时间才完完全全调整好。感觉表现不是非常好。回来一定要练习手写代码,还要注意防御性判断!

2. 二面

  • 讲一下Java中有哪些Map
  • 字节流和字符流的区别
  • Java同步方式,多线程,有没有使用线程池
  • 你了解哪些设计模式
  • 讲一下几种排序算法的原理
  • 手写代码。二分查找。

二面进行时间比较短,会就问得比较深,不会就过。代码题比较简单,也基本一次就对了,因此应该来说还是比较顺利。

第一题,Java中的Map好像用得比较多的是HashMap,TreeMap,HashTable。

< 大专栏   暑期实习的面试备忘p>第三题,我回答的Java的同步方式就是synchronized和lock。volatile不知道算不算,当时也忘记说了。后来查了查,应该是Synchronized,volatile,lock和局部变量。

3. HR面

  • 为什么想做程序员
  • 在平时开发过程中,哪个项目最深刻,为什么
  • 为什么投我们部门(Java公共技术开发)
  • 有木有投其他实习,如果都过了怎么选择
  • 暑期能不能来实习
  • 对实习薪资有什么要求

中午在网易吃了午饭,网易食堂竟然不用刷卡,随便吃的。。。HR姐姐也挺和善,其实就是和你聊聊天。

总的来说,网易给我的感觉还是很好的,更加注重的是你在解题过程中,思维发展的过程,如何一步一步进行优化。

总结一下,JVM,GC,设计模式简直是Java面试必问。。。


二、阿里巴巴

职位:客户端开发工程师(杭州)

投了阿里之后,没有收到笔试通知,某天晚上直接就来了电话面试。目前为止,只进行了电面,后续消息还在等。

1. 电面一面

  • 先自我介绍一下
  • 讲了一下我的Android App,讲了一下RxJava
  • Android进程间如何通信
  • Android多线程
  • 我说我看过源码,就讲了一下view的绘制过程
  • 你了解哪些设计模式
  • JVM内存管理
  • JVM类加载机制

因为一直在写自己的App,对这些部分都很熟悉,基本上都回答出来了,感觉还不错。

2. 电面二面

  • HashMap实现原理
  • JVM垃圾回收机制
  • Activity的启动模式
  • 了解哪些设计模式
  • 如何从监控用户使用app出现闪退情况的原因

3. 电面HR面

  • 开发过程中遇到最大的困难,如何解决
  • 说出你自己的三个优点
  • 如果你通过面试,你认为自己比别人的优势在哪?
  • 如果没有通过面试,你认为原因是什么?

By tjt

2016.04.07

猜你喜欢

转载自www.cnblogs.com/liuzhongrong/p/12408118.html