近期我司招聘,我去面了一些android开发的哥们,以下由近期面试总结得出的体会,以技术面试60分钟为基准,根据我去面试和面试别人的经验,我把整个面试流程大概规划为以下几个部分:

1. 10%的时间去看自我介绍,了解基本信息,离职原因,工作组成员情况

这里就是简历上的基本信息,基本上只要表达能清晰流利就可以了,噢,据小伙伴说有可能还要看一眼是不是"老乡",虽然我完全不理解这所谓的老乡关系能带来多少的安全感,离职原因的话,其实度娘一下,这里不需要你真正的原因,但是需要一个合理的原因,这里说度娘不说谷歌,是因为我发现好大一部分人对Google的刚需没那么大,包括装了过滤广告插件的我,更有甚者,还有一部分开发人员的第二开发工具竟然不是谷歌浏览器.

2. 15%的时间去验证基本水平

  • 1.常用工具使用,Git的使用,常用第三方库.这里基本没人会犯错,基本名字肯定能说一两个,即使不做任何面试准备.

比较离谱的是有一个哥们,问基础的时候感觉答的不是很好,拿出项目我问那个模块他做的,好不容易找到一个简单的页面,问实现竟然也是吞吞吐吐,于是我就很机(狡)智(猾)地问了下: 你现在用的androidStudio(第一开发工具)是什么版本的,他迟疑了一下,竟然说好久没看忘记了,我心想这TM就尴尬了,连吃饭的家伙都不了解,即使是真的这样,那最近新出了一个3.0大版本,只要近半年关注了任何一个android开发相关的公众号或者网站,必定能看到这个条信息,看了之后还是不去关注自己使用的版本的,那这职业心性基本相当于玩王者荣耀不买装备还想越塔强杀人家,分分钟回血池等复活.

  • 2.基础的Java知识点,包括集合,数据类型,三大特性,多线程,网络基础tcp相关;还有android基础的一些组件,基本的控件的如fragment,listView,四大组件等等,这里虽然像我自己也压根平常没有刻意关注这些,就是有个基本印象,但是作为应聘的人,这些问题起码可以看出对面试的准备和态度.

我认为不管技术如何,在应聘的时候都要重新去梳理一下基础的知识结构,这里都还没有讲到算法呢,手写最简单的冒泡排序和二分查找都能过滤一大片了,然而在面向浏览器编程的阶段,纠结于这些对于实际的结果没有什么有利的影响.

  • 3.态度很重要,面试并不能完全看清楚一个人的水平,我在面对技术比我厉害的人,自己也有点心虚,但是在技术能达到要求的前提下(此处在我看来标准是吹技术不过于装逼而且能不被我拆穿的情况下),招人在能满足工作要求的前提下,当然是找看的顺眼的啦.

3. 45%的时间去聊项目

  • 1.以及项目中常用的技术点,不要问插件使用和第三方SDK的使用,这些看文档找博客基本能完成,前面确认了工作经历的情况之后,此处再问这些并不能体现真实的工作能力,关注的点,我认为第一个是看负责的模块的实现,去看对方的表达的思路,考虑技术实现的想法是否符合其项目履历和工作经验年限,首先是能回答出来项目的实现,然后能顺便讲讲自己在其中经历的难点和事后的思考最好了.

  • 2.涉及第三方库,如网络框架,Okhttp,Retrofit,Volley,图片处理框架Glide,Picasso,ImageLoader等,首先聊使用的场景,还是聊遇到的问题,解决的办法.接下来问用的顺手的,问下里面的实现,okhttp有自己封装吗,拦截器了解过吗.到了图片框架,我一般问下用在什么地方,里面的一些源码看过没有,缓存的算法,以及横向的使用对比等等.

  • 3.针对提到的项目点延伸出来相应的问题.可以联想到的.

比如简单的列表,ScrollView嵌套listView,这里可以问出滑动事件冲突的解决,view的绘制流程到自定义控件的实现思路,事件分发机制的处理机制以及相关使用,谈到glide加载图片,可以聊到数据量大的处理,图片0OOM问题的处理,线程池的理解和自定义相关

  • 4.问一下对一些常用的库或者业务技术的了解.

比如微信支付流程这个问题,我每个人都问了,每个人都说做过,没有一个人能完整统筹地回答出来,这个问题说大不大,说小不小,但是即使是这样,根据自己的理解总是有人能说出大概思路的,这不需要背文档,操作过之后用心去理解一下,就能变为自己的东西了.

  • 5.模拟具体的业务场景.这个可以举一些例子.

比如地图业务,类似摩拜单车行驶轨迹的记录怎么做,聊天业务,聊天信息为什么能实时传输,聊天记录如何保持,数据持久化方面等场景,之前有一个段子说可以拿自己目前项目中没有解决的问题拿出去给对方解决一下.

我之前去面试就遇到过别人问斗地主洗牌,要达成随机洗牌然后怎么发牌达到什么要求的实现思路,当时没答出来,后面想想其实这里用集合和多线程去入手就可以解决,另外一家做游戏,上来抓着多线程的问题虐的死去活来,如何实现用户多个操作同时进行,并发处理等等.

  • 6.很多人秉持说多错多的原则,我觉得这里是除了技术问答的第二个可以拉开差距的地方,主动的总是比被动的好点.

像我撸着代码一头懵逼被拉去面试,问了技术之后,没准备好接下来问什么,我一般就假装去看简历,拿对方写的几道(我就这么百度一下的题目)看看,其实问了上面的基本接下来这块就差不多了,这时候如果对方能顺着刚才的话题再串联一下技术点我觉得会很好,不过没遇到过,可能是我司的逼格不够了.

  • 6.哦,还有一个现象:写笔试题很多半个钟写不完8,9道基础题,字也是真的丑.

4. 20%时间去聊理解

  • 1.一个区分技术水平到哪个程度的问题:对activity的理解.activity的生命周期基本每个人都能说出来,哪个方法怎么用实现什么都大概有个一二,但能不能联系实际的业务场景,以及有自己的思考,这就是在2-5年这个阶段技术分水岭之一,我觉得这个问题可以看做是中级到高级的分水岭,中级是定义为能干活,高级是会干活.

有个哥们简历上.activity写了精通,我就问他对activity的理解,,,他就说几个生命周期..然后就没有然后了.这不就相当于劝妹纸多喝热水了,这样肯定追不到妹纸的....

额.然后我引导他,我说可以想一下工作中用到的场景..然后他想了一下说好像极光推送用过onResume方法..我没用过极光推送..我想了一下,我说是不是这里可以类似考虑app应用从前台到后台再回到前台的生命周期执行,然后联想到推送服务只有放在这几个方法才能保持实现..维持服务持久之类的(此处经查询得知,正确的理解应该是广播接受者相关的(捂脸状态)).

所以面试官也经常是错的嘛,面试的基本要诀和追妹纸是一样一样的,不要怂,胆大心细脸皮厚.(此处我有一个大胆的想法~~)

  • 2.这里主要考虑的就是能不能从简单介绍+业务场景+自己的思考入手,一个人说全套,类似的问题,如对http的理解,可以自己聊项目开发中跟后台交互的经验,对接口和抽象类的理解,可以谈到项目结构,谈到MVP和组件化的思路,因为我们今天做的绝大部分业务和技术,都是有人已经踩过坑了,有的只是实现时间的长短和对搜索关键字的使用了.所以能自己独立收获到才是正解.

"我不一定要这个,但你得懂."

  • 3.我的水平有限,只能举例到这个地方,至于更深刻的前沿的,我大概有几个方向,应该是大公司所考虑的,项目代码的复用性,混淆和热修复的原理,视频影音的优化,JNI的实现之类的了,

想想平时遇到公众号推送,看下一线互联网公司的面试题,发现一半的东西看的怀疑人生了.

5. 10%的时间想有没有即兴想问的和对方有问题的东西.大概提一下业务的内容,薪资不是自己考虑的东西,只关注技术,如果过关自然接下来有人来谈业务,不过关的话那就可以回去等通知啦.

Android面试总结相关推荐

  1. 【Android 面试基础知识点整理】

    针对Android面试中常见的一些知识点整理,Max 仅仅是个搬运工.感谢本文中引用文章的各位作者,给大家分享了这么多优秀文章.对于当中的解析,是原作者个人见解,有错误和不准确的地方,也请大家积极指正 ...

  2. Android 面试系列 Dn.1---- Service?

    Yo....Yo..Yo... 各位学zha老爷们好,我是靠颜值混日子的榴莲欧巴,欢迎学zha老爷们按时来阅读今天的 Android面试系列.如果您是一个年龄小于24岁妹纸,一定要关注微信公众号&qu ...

  3. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18)

    1.android开发新浪面试题[开发者必看哦] 下载地址 http://www.eoeandroid.com/thread-177885-1-1.html 2.华为关于android笔试题案例解析 ...

  4. 我的android面试经历

    做了一年的android应用开发,准备换个工作环境,结果在面试中却成了一个典型的面霸,两周的十个工作日里,竟然笔试加面试达到了15次.不过,在这些面试中学到了不少东西!下面把我的android面试经历 ...

  5. Android面试宝典

    GitHub托管 https://github.com/JackChan1999/Android-Interview GitBook在线阅读 在线阅读,PDF.ePub.Mobi电子书下载 https ...

  6. Android面试:Java相关

    Android面试常见Java相关问题. 原文链接:http://www.nowcoder.com/discuss/3244 Switch能否用string做参数? 在 Java 7 之前, swit ...

  7. BAT Android面试专题深入探究:四大组件+ViewPager+组件化架构+Bitmap

    本篇是结合我之前面试别人的经验,以及跟一些在BAT上班的朋友,讨论总结出的一份很深的大公司需要用到的一些高端Android技术.这里也专门整理了一个文档,重点和难点都有详细解析.这些题目有点技术含量, ...

  8. Android端发送字符到Wed端,Android面试-socket和websocket

    Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时建立连接通道,当客户端向服 ...

  9. 【Android面试】Android面试题集锦 (陆续更新)

    [Android面试]Android面试题集锦 (陆续更新) 分类: [杂七杂八]2011-05-11 17:58 2064人阅读 评论(0) 收藏 举报 一些常见的Android面试基础题做下总结, ...

  10. 看完99%的人都学会了!9次Android面试经验总结,我先收藏为敬

    我们都是被圈养的人? 我的朋友程序员K,说他在电力行业的一家软件公司做了八年Android开发,用到的各种技术,数据库,网络请求,事件传递,响应框架都很熟悉,甚至JNI/NDK/Framework,J ...

最新文章

  1. 二叉树结点地址小错误
  2. Maven -- group、artifact、package
  3. arduino python firmate_processing firmata协议及数组训练
  4. Personal Rank——个性化推荐召回算法python
  5. Sublime Text 使用介绍、全套快捷键及插件推荐
  6. PostgreSQL修改pgsql提示符
  7. java求职面试_Java面试求职
  8. 对梯度提升树(GBDT)的通俗理解
  9. 机械优化设计进退法c语言程序,机械优化设计powell法程序
  10. 图片旋转_系统自带画图程序,图片旋转翻转调整大小修改转换格式图文教程
  11. 与postman的第一次亲密接触
  12. Web前端JSP面试题
  13. 火爆数字资产Vpay plustoken各种钱包开发,你看中了哪一款?
  14. jquery悬浮在右侧的在线客服代码
  15. 深入理解GAN对抗生成网络
  16. 2021年高处安装、维护、拆除考试试卷及高处安装、维护、拆除操作证考试
  17. java url正则校验,Java正则验证
  18. mac卸载python3.7_工具安装-Mac 卸载python3
  19. python的学习笔记案例3--基础代谢率计算1.0
  20. 数字图像处理实验——图片压缩与解压(opencv)

热门文章

  1. Elasticsearch教程(35) ik中文分词器+pinyin拼音分词器+同义词
  2. 微信网页授权页面获取不到code
  3. 遍历文件夹批量重命名
  4. HTML网页标签代码基本教学(1)基本标签学习
  5. Python脚本完成VCS文件的file_list到.prj文件的转化
  6. 机械革命无法使用U盘启动linux,机械革命笔记本bios设置u盘启动教程
  7. 使用Word批量删除换行和空白行
  8. ps里面的css,PS中如何添加图层样式
  9. 无法修改计算机睡眠,win7不能睡眠怎么办,通过两个步骤的设置轻松解决
  10. EML-NET: An Expandable Multi-Layer NETwork for Saliency Prediction【论文笔记】