阅读本文大概需要 3 分钟。
这是周五晚上应大家要求,我在我的邪教群里给大家做的一个面试主题的讲解,全程都是手动打的文字,时间持续了将近 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线程的几种用法)
......
中级
屏幕适配经验,性能优化的经验、 Java 线程几种用法等
如插件化, 如网络的优化, 如缓存的处理, 如插件化, 如Service保活
对产品的一些看法, 对代码质量的要求, 对开发流程、团队合作的理解等
06. 工资
不同的城市肯定工资水平不一样的,这里仅以一线城市为例,而且不同的公司、个人能力的高低都会造成工资差异化,这里只是一个大概,仅作参考。
初级的大概 8k 以下吧(能力优秀的可以达到 1w 左右),一般 1 年左右;
中级的大概在 10k—15k 左右,一般 2 年左右;
高级的在 15-25k 范围,一般 3 年以上;
PS:之前的这篇文章「 对不起,又秀了一波恩爱! 」很多人收到了我回复的「帅」字,表示惊到了,问我是不是群发的,告诉你们,微信没有提供回复赞赏的接口,你们收到的任何回复都是我自己的手动回复,这篇文章 600 多人赞赏我全都一个个人工回复的,就是这么认真!
再PS:别再问怎么加入邪教群了,这个群我从没有公开过,缘分到了自然会邀请你加入的。另外,群里人整理了一份 Android 面试相关的资料,还是蛮全的,这里免费赠送给大家,回复「面试」获取。