紧接着“2016年3月android面试总结(1)”,对其他4个公司的面试情况做一个总结:

4.万*科技

        号称很厉害的公司,在南山区软件产业基地那边。这次面试完全被虐了。
        第一轮技术面试,有几个问题问的比较深,android回收优先级、java设计模式、多线程同步(单例)、消息环、anr、内存泄露。尤其是多线程同步(单例),以前只是了解过,根本没用过,只能把大概意思说出来,写不出来;还有消息环,不是简单的问handle、looper,looper是个什么东西,怎么运作的,这边发消息那边怎么就知道要取消息了啊,没消息的时候looper会怎么样啊?anr出现的可能性,怎么分析,分析哪个文件;什么情况会出现内存泄露,怎么分析解决。监听设计模式能不能画一下图。还问了tcp/ip协议族。第一轮感觉一般般,到了第二轮被他们老大虐死了。问ip协议头有什么内容,类似微信的消息队列是怎么维护的,http接口访问不了,是路由哪里出问题了,app用户负载问题怎么考虑。
        总结,多线程同步(单例)、anr、内存泄露、消息环还是了解得不够深刻。公司环境不错,第一轮面试得一般般,面试官人还挺好的,不会的他也不强求,会的,就会深入地问问,答不出来也没关系。第二轮,他们老大的问题没怎么回答上,最后还说什么,不要因为涨2-3K块钱去跳槽,你还有很大的进步空间,要沉下气去学习,不要这么浮躁。。。。。。。。。一大堆,我想说,没有开高价,是因为觉得自己面试得一般,贵公司有很多东西能让我学,这就被你理解为为了2-3K去跳槽,如果我期望得多了,你岂不是会说我不自量力。再说了,每个公司都有自己的技术点,我不会你们的,不代表我不能满足别人的需求,搞得好像每个做安卓的都要会你们问的才对。http接口访问不了,我怎么知道是路由哪里出问题了,我又不是做通信的;app用户负载问题要怎么考虑,一个app就一个负载(用户)而已。如果会你们技术,我才不会到你们公司去呢,因为学不到东西。

5.某珠海著名手机公司魅**深圳分公司

       在深大北门附近,是他们在深圳的一个分公司,要开发一些手机内嵌的应用,类似电商客服之类的。先是笔试题,笔试题还挺有水平的,感觉应该能学到东西,哪知道公司没有做安卓的,HR又骗我了。问的都是一些基本问题,问得都不怎么想回答了。第二轮面试,大概就问问期望薪资,是怎么开发项目的,项目每个阶段做什么之类的。
        总结,公司大概就50号人的样子,以为有安卓开发的,才会去面试的。感觉是我期望薪资过高,第二轮结束以后就让我回去了。

6.某新浪子公司中***

        做彩票平台的,在腾讯大厦附近。问的都是一些基本问题。还说我项目经验挺丰富的,开发项目应该没有问题。第一轮面试完说老大不在,让我明天下午过来,HR会跟我约时间。第二天我也没去,HR也没给我电话。
        总结,环境还不错,是一个没有安卓团队的公司,在组建当中。

7.某国际著名pc芯片公司英**,

        在南山区威新科技园那边。我也是抱着学习的心态去,估计这种公司应该进不了。先是电话面试,问一些基本知识:生命周期、服务、内存泄露、单例坏处、设计模式、线程同步、anr分析、遍历hashmap。过两天就约我去面试。为了面试,我还特意去研究了电话面试问的问题,还找了找英语的感觉,说笔试题是英文的,工作中也要用到。抱着学习的心态去面试,先是笔试题,有难度,几乎不涉及安卓的,都是c c++ java,包括查找算法、数组置换、集合、string对象创建、继承、同步死锁。c c++都没怎么出来,java的都写完了。写了一个多小时,就开始面试,两个面试官,其中一个不会安卓,问的问题虽然很常见,但是要回答到点上不是那么容易,父控件子控件绘制流程、数据库表的设计、消息环、服务的启动、smack的深入研究、aidl、 第三方控件imageloader、数据安全等。
        总结,c这块确实不怎么会,尤其是查找、集合,aidl也不会,数据库表也设计得简单,smack和imageloader也没深入研究过,父控件子控件绘制流程也不深刻,尤其是draw的过程。环境没有想象中高大上,但算可以的,面试官都很友好,像是在讨论问题一样,其中一个安卓比较厉害,没有进入第三轮面试,算是见识过知名公司的面试。估计要就职这类型的公司,至少1轮电话面试、1轮笔试、1轮技术面试、1轮经理级面试、1轮HR面试。

8.腾讯某全资子公司瓶***,

        在南山蛇口这边。面试官一开始说,看简历感觉你很厉害,心想你不会很菜吧,哪知道又被虐了。问题包括:线程池调度复用 (具体如何复用的)、smack原理扩展,登陆具体是怎么登陆的,发出了什么数据包,详细的事件分发流程,window开始,控件的绘制流程,也是从window开始,singletask singleinstance在多进程情况下区别、多线程通信方式(除了handle)、电量流量优化、著名第三方jar的原理,数据结构。
        总结,以上问的问题都是只知道一点点,没有什么深入了解过。这家公司两年前去面试过,拿到了offer,现在无法满足他们的要求了,出来混真的是要还的。挺想去这家公司的,公司环境不错,是做刷机类的应用。后来跟HR沟通得知,面试官觉得我的数据结构比较弱,而且做的应用也比较简单了,虽然用到了一些东西,但是不知道他的原理。


总结:

        通过这次面试,有些知识自己还是没有太深入的了解,例如控件绘制流程、数据结构、多线程通信方式、事件分发、aidl,还是得多学习啊。后续会对面试中碰到的问题进行有计划的学习研究,会写成博客记录下。

不过有几个经验想跟大家分享下的:

1. 想去大公司,例如bat这种,学历还是很重要,没有本科学历,很难通过hr的帅选,除非你真的很牛,但是你得通过其他方法告诉他你很牛,内部有人、出书、博客访问量、开过论坛或者其他。不是说本科就很好,它只是一个敲门砖而已,代表你的学历能力。如果一个本科跟一个专科,两个能力差不多,估计大公司都会选择本科的。

2.除了bat、华为、中兴、oppo,深圳还是有很多公司可以选择的,例如腾讯的子公司、盒子支付、大疆科技、迅雷、优酷土豆。

3.遇到不会的问题,不要怕说,会多少就说多少,面试官只是想知道你会多少而已,不说你肯定没有没有机会。

4.薪资到了一定程度要继续涨,就有难度了,你知识的深度跟广度就得加大,不是简单的知道,而是要知道为什么这样,代码是怎么样的。例如绘制流程很多人都知道measure,layout, draw,但从window开始到最里面的子控件又是怎么样一个流程呢,每个方法是怎么调用的。




更多相关文章

  1. Android构建Material Design应用详解
  2. 大数据:Android与IOS职位需求对比
  3. 2014年年终总结以及新的规划
  4. 移动互联网企业火热招聘IOS, Android, Java工程师~~欢迎大家推荐
  5. Android(安卓)Material Design中的BottomNavigationView实现底部
  6. View和Layout
  7. android spinner 样式完全自定义[包括RadioButton和RatingBar效
  8. android中获取宽高
  9. Android组合控件实现功能强大的自定义控件

随机推荐

  1. android中,用SimpleAdapter创建有自己布局
  2. 4.28 context.getExternalFilesDir(null)
  3. Android怎么用onCreateOptionsMenu()创建
  4. Android生成签名文件并用其对apk文件进行
  5. 使用ndk开发android 5.0 平台错误处理(1)
  6. Android4.1输入子系统框架介绍和性能分析
  7. android 真机 安装 模拟器 DevTools Deve
  8. USB设备驱动程序学习笔记(一)
  9. 对热修复和插件化的理解
  10. Android中对SD卡的读取与写入