初级Android工程师面试经验。

自我介绍

战五渣,工作时间一年半,代码搬运工,独立开发,裸辞掉青岛那边的工作来上海发展,没有博客,没有github,5个项目,1一个上线。

我的简历

很渣的那种,项目中大小功能都写了,几乎没有一点吹水,最好少吹,很多公司还是按着你的简历来提问你。

投放简历

来之前就听说了上海这边Android几近饱和,于是一周之内投了600份简历,主要用到拉钩(看好再投,每天就10次,要求不符合就别浪费名额),boss直聘(符合工作经验就投吧),智联招聘和51job(闭着眼投,投到手发酸),第一周没有面试邀请,第二周开始有了面试邀请。

开始面试

在第二周开始面试之旅。因为我之前写过launcher,写过arm板子上的安卓(门禁系统)所以主要接到的公司类型有这么几种:

1.外包公司

这类公司不建议,假如有活干会很忙,假如没活干会通过压低薪资的方式逼迫你离职,能力很难提升,因为时间紧任务重,功能实现就好,很多细节学习不到,况且稍有规模的外包公司很多功能已经写好了组件,你只需要粘贴复制。

2.基于MTK的Android设备相关公司

我就去面试过单警执法记录仪等等,设备也是Android的但是并不需要适配,我是觉得不太好。

3.底层框架或者系统应用的开发

例如pos机等等,但是我觉得如果你之前是纯apk的开发经验,以后也没有走底层的想法,还是别去祸害人家公司了,也别祸害自己的时间和前途。

我建议各位面试之前要有原则,假如你不想去外包,面试之前百度好,是外包就不去,不要浪费时间了。假如你就是想走纯apk路线,你选择了底层,做了一年开发,最后你就是一年底层一年上层,再找工作很麻烦。

面试正式开始

因为我之前基本都是代码的搬运工,很多东西不是很明白,是我自己的短板,java基础也渣(我曹,我为什么还没转行),但是面试前坛子里的一篇面试总结救了我,让我及时学习,勉强应付。

1.用过java泛型么?

2.java的反射机制?

3.java集合类。

4.fragment和activity的通信。

5.http发送网络请求cancel怎么用的。

6.intent传递对象。

7.mvc,mvp,mvvm区别。

8.mvp中每层些什么?

9.轻量级存储如何存一个java对象。

10.说下观察者模式。

11.listview原理。

12.如何开启一个service。

13.service的生命周期。

14.handler原理。

15.为什么要有handler机制。

16.activity生命周期,A跳转B生命周期变换,B结束回到A生命周期变换,哪层可见,哪层可操作。

17.如何不用imageloader自己写一个图片加载缓存方法。

18.okhttp原理。

19.现在同样功能的框架有很多,为什么用A框架不用B框架。

20.Rxjava eventbus 热修复 插件化 H5 混合开发 一些公司也有问过,我确实不会,只好悲剧。

其实还有很多问题,有些暂时想不起来了,我认为对于我这个搬运工比较难的无非是很多细节的问题:例如,面试官看到我写过banner轮播,他会问viewpager是不能循环的,请问你是怎么实现循环的,但凡是看过一遍demo的就会了,我当时没看,还有一些你可能你能说出来但是他会问你具体实现的方法,例如三级缓存,他会说怎么实现呢,用到了什么方法,等等,其实大部分问题都是你简历上有的,你要是简历写了你却不会,多尴尬。

你可能感兴趣的:(初级Android工程师面试经验。)