素材选自:无名huster
去年秋招面试了一些公司,现在把面经和面试体验发一下,大佬们共同学习。
由于水平比较差,所以才获得几个offer(小公司不算):百度,美团,小米,华为,链家,百度外卖(后期获得头条,拼多多Offer)
职位都是:android客户端开发
最后有一些资料,是准备面试的知识汇总,数据结构,计算机网络啥的基本上都有了。嗯,自己收录、整理和分类的,还请尊重知识产出。
8月29日 小米一面 (1小时20分钟)
输入一个n*n的正方形矩阵a,要求填充逻辑代码,将矩阵a顺时针旋转90度
8月30号 小米二面(1小时20分钟)
题目:一个字符串,开始可能有0-N个空格,然后在这个串中每个单词之间有1-N个空格,最后的结束也有N个空格,现在要求最后的输出结果是开始不能有空格,每个单词之间只能有一个空格,最后全部是空格的格式
一、先实现,无要求
二、空间复杂度要求为O(1),再优化
9月20号 武汉现场面三面 40分钟
面试体验:
小米每次面试基本上必备的就是手撕算法,so,一定要做好点准备,难度都一般,不是难的那种。另外从android的技术上来说,从我的面试经历来说都是一点即过,面试官没有多少深入的挖掘知识点。面试官都很nice,有些算法上卡着了,会一步一步的引导你。赞一个
9月25号 今日头条 1面 30分钟
今日头条 2面 1小时
面试体验:
武汉现场面,一面不是android开发面试官,应该是java的,所以就问了算法了。每个算法不是很难,但是会让你写最优,只有思路不行,必须要完整写出来。二面是android面试官,嗯,总的情况的话答下来有80%左右吧。前面都还好,最后我问他问题的时候我问他对我评价如何,然后他说我对技术不热情,问我是不是跨专业?我一脸懵逼,,理由如下:你知道目前的新框架为什么还在项目中用旧的框架?你项目中还有用到eclipse的,为什么不用androidstudio?然后我给他说:我选择框架只选择针对我这个项目合适的框架,并且框架原理相同,我知道了一个原理了其他的也就是一样的了。并且我平时也用过新框架自己搞demo;第二:我进入实验室的时候就是eclipse的项目,我是接锅的。后面的我自己搞得项目就用androidstudio了,平时demo我也是用androidstudio了,有问题么?拿着我的简历然后问我是不是跨专业?呵呵哒,算您会挖苦人。。直接告诉他,今天就到这吧,面不起我还可以躲得起。。
8月24日 手机百度电话一面 34分钟
8月29日 百度二面(一小时50分钟)
根据他提的需求,写代码(主要就是设计模式的使用原则和设计模式的使用):基本上涉及的知识点:策略模式,工厂方法模式。之后根据不同的新需求如何尽可能少的修改原来代码来实现新功能。
权利翻转:你有什么需要问的么?…
百度三面(50分钟)
接着问,你数据结构知道吧?
**面试感受:**1面基本上完美,很舒服。2面面试官很有深度,并且人超棒,会引导你去如何解决。3面是经理面。我说错了一句话,嗯,导致失败了吧,其实三面总的来说打得也算是马马虎虎到70%,一句话失误导致最后失败了吧。。。郁闷了好多天,,,
7月4号 华为优招
一面:
上来是做自我介绍,之后开始问项目,讲项目中的认为的难点,印象深刻的地方。
即时通讯IM,BLE蓝牙连接
针对简历继续问
android消息机制 view分发机制 android性能优化 binder机制 设计模式(包含设计原则)
android相关:
广播的静态注册与动态注册 广播的有序与无序 service的如何保持不被杀死 内存泄露(handler 等…)
java:
== 与equals区别 stringBuffer与stringBuilder区别 hashmap的原理
网络:
post与get区别 http与https区别 网络错误码
二面
聊人生。。。
8月31日 拼多多 一面(30分钟)
9月4号 二面
面试体验:
拼多多一面远程电话面试,基本上都是基础中的基础,没有什么压力。所以很简单的进入了提前批武汉现场技术终面。技术终面那天先面试的HR,HR很nice。对于技术终面面试官来说,面试体验到巨差:据说是数据挖掘和客户端的leader,然后我面试客户端方向,我做自我介绍的时候说道14年实习的项目,然后他问我14年用的框架源码?14年的框架早就淘汰了好么?我说我可以讲下现在我项目中的网络库volley的实现机制,然后他没搭理我,问我volley这个库他是如何处理cookie的?我勒个去,有没有搞错?volley没有对cookie进行过处理好吧?源码都看过做过解析的,然后他不信。。之后拿出我8月一的题目让我做,任务调度的那个题目,一共是三问,面试官问我有没有问题,我在他的提醒下改了前两个题目,第三个题目还没有改就说今天到这结束了,好吧,那就结束吧,我也想结束。。
8月28日
网易一面:40分钟
自我介绍……
1 项目挨个问了下(准备充分,无压力)
2. volley框架说下
3. 手写一个生产者消费者
4.手写fragment生命周期和activity生命周期,并把生命周期一一对应上。
5. 热修复说下,几种方式?各自原理?
6. 插件化了解么?说下,基本原理知道么?
7 混合开发了解么?
8.A应用如何打开B应用的界面?
9. 安卓性能优化有哪些?
10.recycleView说下
11. activity与fragment交互,如何互传数据
12. binder说下
13 activityManagerService知道么?说下
网易二面:基本没问项目,完全面试官自由发挥。40分钟
无自我介绍,直接开怼。
结束,几分钟以后问hr小姐姐:很遗憾……
面试体验:
一面面试官很nice,基本上问的问题也都答上来了。也乐于听你说的话。二面面试官上来没让自我介绍,拿一个笔开始划你的简历,但是基本上也没有问过简历上的项目。问的问题有些很刁钻也很深入。如果在开发过程中没有真的去搞懂一些api的话,会很吃亏。感觉面试官技术有深度,对于一些项目api中的细节有比较深的认识。有些自负,问问题都声音小的很。最后都不让问问题。很nb的样子
9月16日 链家
1面 40分钟
2面 30分钟
3 面 HR 15分钟
面试体验:
链家一面是一个超级超级漂亮的美眉有些像贾静雯。我一开始以为是hr,,,哈哈,后来上来第一个问题是问我进程间通讯机制,其实当时我脑子里想的是hr问的一些问题,有点脑子转不过来。二面是一个不是搞android的面试官,人挺好,问了些网络的事情,我的知识点都知道,但是一直没怎么能get到他的点子上…三面hr是一个男的,恩,第一次遇到男HR,聊得还好总体来说,链家面试流程和面试官都很nice
9月19 上午11点 百度测试开发一面 1小时
1. 自我介绍
2. 讲一个你最熟悉的项目。
3. 画一下你的项目流程图
4. 代码实现:给两个链表,找到两个链表的最长公共子串,输出子串和子串长度。
5. 针对你项目中的要素如果你去做测试的话,你怎么去做
6. 测试你了解些什么
7. 你在项目中都做了些什么测试?
8. 如果你去做你项目的测试,你会怎样做
9.你有什么想问的
下午2点 百度测开 二面 1小时
1.自我介绍
2. 手撕代码:给一个单链表,要求随机输出一个节点。要求时间复杂度和空间复杂度足够低。
3. 对上面更高的要求:只允许遍历一次。而且要保证各个节点被选中的概率相同
4. 讲一个你最熟悉的项目
5. 用你知道的知识如果做测试的话,你会考虑些什么
6. 对你项目中的几个要点,如果做自动化测试针对每个要点你该如何去做?
7. 如果你的app蓝牙数据显示异常,你会从什么角度考虑?尽可能全面。
8. 你有什么想问的
下午4点 百度测开 三面 1小时
1. 自我介绍
2. 说一下你印象最深的项目
3. 你使用的这种BLE蓝牙有什么好处
4. 一个3升水的桶,一个5升的,如何找到4升的水
5.一个矿泉水瓶,你感觉她有什么用处。
6 .你如何评价你本科还有研究生的学习生活
7. 你感觉研究生生活的话,你的亮点在哪里
8. 你对你的自我评价说下
9. 现在有几个offer,你会选择哪一个?为什么?
10.你有什么想问的。
面试体验:
面试官都比较nice,很会引导人。问题有深度,会挖掘你的测试意识和潜力。就是面试过程有点折腾。。我一面面完了之后从酒店出来坐车回学校,结果马上就要到学校了,电话通知我马上回去二面,,无奈。右打的赶过去,结果规定的时间面试我到了,但是面试官房间里面已经有了一个面试是神马情况?仔细一听原来是霸面的,,好吧。。等了20分钟开始我的二面。二面结束,面试官说可以走了。我就离开酒店坐上了地铁,然后地铁刚开的那一刻收到了二面面试官电话,让我回去接着三面,,得令,,又到了下一站坐回来进行三面。。
9月20号 美团点评 1面 40分钟
2面 40分钟
判断一个字符串是否为一个合格的密码,一个合格的密码需要满足如下条件:
1. 长度必须大于 6;
2. 首字母必须为大写字母
3. 只能包含 ‘a ~ z’ 或 ‘A ~ Z’ 或 '_‘或’0~9’
4. 至少有两种不同类型的字符
3面 40分钟
4面 HR 30分钟
面试体验:
问的一些问题还是挺开放的,注重你的思路。一些题目还是有些深度。但是大部分还是可以轻松搞定。本来因为一些原因晚去了面试,但是还有面试机会,谢谢帮助过我的那个萌妹纸~~
一下午一口气面到三面,爽快三面经理面也是一个爽快人哈哈,要不是太晚了就直接面试hr了,无奈,只能第二天面试hr了。。最后走的时候三个面试官和我说再见,挺温馨~
9月21号 腾讯一面 30分钟
9月23号 腾讯二面 25分钟
面试体验:
好吧,聊天到了二面,确实是该挂人的时候了,该说再见了。应该是招够人了,所以走走过场。恩,还不错吧,至少没有遇到过其他同学面试官上来怼人的情况。面试官还是挺好的,面试体验蛮好再见腾讯
百度外卖 9月20号 一面 40分钟
9月23号 二面 30分钟
9月23号 三面 40分钟
面试体验:
百度外卖在武汉地区面试,没有碰到android客户端的面试官,都是java面试官客串的(至少我三次面都不是做android的,题目都是从电脑题库中抽出来的,没有什么深度)。不过面试官都很nice~
9月13号 滴滴一面 1小时(愉快的氛围中GG)
之后开始聊天,聊人生,,,面试官人挺好,说一开始做后台,后来做ios,现在接触android几个月。恩,好吧,果然这么多sql语句不是凭空出来的,哈哈…就挂在了sql上,和滴滴说再见…
9月8号 搜狐 40分钟
最后有一些资料,是准备面试的知识汇总,数据结构,计算机网络啥的基本上都有了。嗯,自己收录、整理和分类的,还请尊重知识产出。
分享给大家的资料包括高级架构技术进阶脑图、Android开发面试专题资料,还有高级进阶架构资料包括但不限于【高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术】希望能帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也是可以分享给身边好友一起学习的!
关注微信公众号【Android开发之家】获取小编为大家收录整理的资料
重要的事说三遍,转发+转发+转发,让更多需要的朋友们都可以看到并且领到资料!