首发于stormzhang
Android 面试那些事儿

Android 面试那些事儿

这是周五晚上应大家要求,我在我的邪教群里给大家做的一个面试主题的讲解,全程都是手动打的文字,时间持续了将近 2 个小时,当时关于面试讲解的很细,群里有心的人把一些精华提取并整理出来了,这里作为福利送给你们吧,也希望能对你们有点用处!



01. 基本信息


  • 简历不要太花哨, 你是应聘的技术, 不是设计师

  • 简历把一些基本信息要说清楚(无关的不要写, 比如头像之类的)

  • 有个人博客, 跟 GitHub 的写上, 若没有内容那就算了

  • 应届毕业生需写上相关证书之类, 有经验的可不写

  • 简历控制在两页 A4 纸



02. 项目经验


  • 一般写 2, 3个代表性的项目就好,优先写本职工作相关的

  • 时间为倒序

  • 说明你在项目当中的职责作用

  • 项目模块需要了解大概逻辑与思路,以及一些关键的技术点,以防面试官问到

  • 没有项目经验的也要模仿一两个小 Demo



03. 须知


  • 自己亲自做的东西一定要明白, 如果不是自己亲自做的, 请慎重骗面试官

  • 问的时候会问一些知识点相关的话题,比如你的数据是需要 api 交互的,那可能会问 http 相关, json 数据解析相关,缓存相关,图片加载相关等

  • 对用到的知识点虽用不着一定要看源码的地步,但是最好要懂原理,比如图片加载一定要知道二级缓存,一些常见的缓存算法



04. 注意事项


  • 去面试前一定要花点时间了解下你面试的这家公司(本身有自己产品的下载体验一下,以防面试过程中问到,或者可以给产品提点意见)

  • 面试的时候态度要谦虚点

  • 学习能力很重要(一定要让面试官感受到你是一个好学的人)

  • 个人兴趣(不要提什么打游戏, 唱歌之类的, 可以说一下业余时间提下自己经常上一些技术社区,看一些技术博客之类的)

  • 除了基本的知识点, 面试官通常都会问一些比较深的领域(可能你没有接触过,但不要气馁, 面试官在考察下你的技术的深度, 这些领域一般包括设计模式, 虚拟机, 插件化, React Native之类的)



05. 常问的知识点


针对不同的级别问的知识点肯定是不一样的。


初级


  • 那基本的 Activity/Fragment的生命周期

  • 四大组件的具体作用以及用法

  • Activity四种启动模式的区别

  • ListView的优化

  • 一些动画的使用

  • Java一些基础知识(如最基本的 String, StringBuilder, StringBuffer的区别; 如ArrayList, LinkedList的区别; Java线程的几种用法)

  • ......


中级

如 View 的事件分发,屏幕适配经验,性能优化的经验、Java 线程几种用法等


高级


  • 如 AIDL、插件化, 如网络的优化, 如缓存的处理, 如插件化, 如 Service 保活

  • 对产品的一些看法, 对代码质量的要求, 对开发流程、团队合作的理解等



06. 工资


不同的城市肯定工资水平不一样的,这里仅以一线城市为例,而且不同的公司、个人能力的高低都会造成工资差异化,这里只是一个大概,仅作参考。


  • 初级的大概 8k 以下吧(能力优秀的可以达到 1w 左右),一般 1 年左右;

  • 中级的大概在 10k—15k 左右,一般 2 年左右;

  • 高级的在 15-25k 范围,一般 3 年以上;




PS:群里人整理了一份 Android 面试相关的资料,还是蛮全的,这里免费赠送给大家,在公众号回复「面试」获取。



本文原创发布于微信公众号 AndroidDeveloper「googdev」,不仅是Android原创干货分享,也许是最有人情味的技术公众号,转载请务必注明出处!
编辑于 2016-07-12 11:28