专栏名称: AI报道
大数据时代,做数据的玩家!
目录
51好读  ›  专栏  ›  AI报道

一年Android工作经验,一举拿下百度、网易、美团、小米、快手等Offer面经

AI报道  · 公众号  · 大数据  · 2017-07-05 18:07

正文

请到「今天看啥」查看全文


面试经历


这里我仅仅记录一些问过的题目(能记住的),答案我就不写出来,基本上都可以在网上找到相应的答案。

0 1

作业盒子


时间有点久,很多问题记得不太清,大概有以下内容。

一面

  • Android一些优化方案

  • 什么是过渡绘制,如何防止过渡绘制

  • 事件分发机制

  • ListView的优化

  • Binder机制

  • 在多进程中,Application会启动几次

  • 单例模式,双锁原理,volatile原理,静态内部类实现单例的原理。

二面

二面面试官是leader?反正应该不是做Android的,Android的相关知识问的也不多,大多是项目上的东西。

  • Java多线程,synchronized

  • 聊项目,都具体做了什么。

  • Binder机制

三面

应该是leader吧,主要了解一些个人的情况,以及一些项目,最后问了期望的薪资,然后当场就给了offer。

毕竟1年多没有面试了,第一场面试还是给我了很大的自信,也知道现在自己大概能要多少工资是合适的,所以同学们准备跳槽的时候,最好先面几家小公司,盒子还是一个很不错的公司,整体的办公环境挺好的,现在也处于盈利状态,在教育类的app中也排的上名次。

0 2

快手


快手就在五道口地铁站出口不远地方,能看到很显眼的LOGO,看上去很霸气的样子,但是当我进入到快手前台的时候,连一个标示符都没有, 一度以为自己走进了假快手,好吧,我是来面试,这些都不重要,接下来接待的人员把我领进了一个小屋里,等待面试的开始。

一面

面试官是一个很fashion的人,是从小米核心部门过来的,是Android小组的领导。

  • 问了关于数据库的一些问题,SQLite的相关操作,没办法,我在华为唯一一个做的和java相关的项目,但是不太擅长数据库。

  • 网络相关的问题,网络的五层模型,又问了TCP和UDP,还有Android相关的长连接,这里问的比较深。

  • 开始Android先关的知识,Handler机制,Acticity的生命周期以及四种启动模式,各自特点,Service的两种启动模式生命周期,如果同时使用两种启动

第一面这就算过关了等待二面。

二面

  • 问了项目相关的问题,这部分根据自己的项目经验,由于大家的经验都不同,这里我就不详细说了。

  • 设定一个场景,怎么去实现相应的功能,因为快手这个部门想做社交,因此这里是问我是如何实现微信的联系人页面(包括与服务端有什么样的交互)

  • 最后也是一个算法,写出所有数组的子序列


二面面试官是这个组的leader,跟我讲了现在这个组的发展情况和快手现在的情况,由于快手成长很快,所以不能仅仅依靠一个APP,还需要在其他方面进行一些尝试,而这个组的任务就是在一些方面做一些尝试,大概就是这个样子。
二面也顺利通过,接下来就是HR面了,这时候正好是12点,他们要去吃饭,不过快手是提供午餐和晚餐的,第一个面试官带给我一份饭,还不错,后来HR跟我说,现在只是过渡时期,后面午餐和晚餐会改成自助餐的形式。

三面

HR上来很亲切,问了我一些面试的情况,难不难之类的,然后又聊了聊我大学和研究生情况,我只想说我“too simple , too naive “,大概了解我后,只跟我聊我的不足,以此来压低我期望的薪水。说了一下薪资期望,加了微信,让我回去等待,说发offer大概是2周时间,因为需要走各种审批流程,让我不要着急。

快手是一个很年轻的公司,技术还是需要一定的积累,希望不要像小咖秀一样昙花一现。

0 3

美团外卖


一面

简历上写的项目问了一遍,然后开始问知识点。

  • volley的源代码,在图片缓存部分讨论了挺长时间,http中缓存机制,Last-Modify的作用等。

  • fragment的生命周期

  • service一些知识

  • 事件分发机制

  • Binder实现机制,Stub类中asInterface函数作用,BnBinder和BpBinder区别。

  • gradle中buildToolsVersion和TargetSdkVersion的区别是什么

  • 手机适配一些方案

  • hashmap的实现原理

  • 静态方法是否能被重写

这些大概聊了1个半小时,开始的时候还有些紧张,慢慢聊开了,就好多了,面试官的语速有点快,老是需要面试官重复一遍,我也不经意间语速也变快了,不过能看出来面试官还是很厉害的。

二面

  • 3次握手和4次挥手的原因,以及为什么需要这样做。

  • 数据结构,搜索二叉树的一些特性,平衡二叉树。

  • hashmap是如何解决hash冲突的

  • 进程与线程区别

  • 写了一个二分查找和单例模式

  • http中的同步和异步

  • 聊了一些项目上做的东西,问了问职业规划


由于二面面试官不是做Android,本来面试我的人临时开会去了,所以这一轮面试没怎么问android相关知识,不过二面面试官一直是微笑,所以这一轮很轻松,更像是一起讨论问题。
面试完已经是下午4:30了,由于面试当天是星期五,而周五美团的会议比较多,所以等了会,二面面试官说三面面试官在开会,面试另约时间,我还是说这次一次面试完吧,这一等就等了2个半小时,期间hr跟我说三面面试官是个大牛。







请到「今天看啥」查看全文