昨天下午去面试了汇丰的高级android工程师的岗位,问的很仔细,每个非常小的android小知识都问到了,包括java的一些知识。如果没有强厚的功底以及平时对知识的深挖,那么回答这些问题还是比较困难的。
首先进行了英语的面试,英语比较差的同学最好提前一个星期多多练习。准备那些面试中经常会面的问题,比如经典的introduce yourself。再就是问你为什么要离职之类的。
英语面完就是技术的面试了,下面是我面试的一些android相关的知识点,大家可以参考:
1.okhttp的使用,如果遇到几个请求依赖并且异步返回的时候该如何处理
2.app的内存如何优化
3.为什么不用view而用fragment
4.多个文件上传如何处理,主之对并发的处理
5.图片缓存是如何处理的
6.framework中使用了大量的静态变量,这样做有什么好处
7.如何解决多个activity有很多共性的问题,该如何管理
8.如何判断左右滑动和上下滑动的差别
9.java中volidate变量的使用场景
10.im消息是怎么实现的
11.onnewintent是在什么时候使用的
12.onattach是用来处理什么的
13.mvc和mvp的区别
总的来说他们需要一个能动性比较强,以及对新知识点敏锐程度很高的开发工程师。
对我的总结:我觉得小公司和大公司的区别就是,小公司做的东西比较杂比较多,大公司做东西比较专注。我做的东西比较多但是做的都不够深入。我觉得这一方面还是需要改进的。