近期我司招聘,我去面了一些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%的时间想有没有即兴想问的和对方有问题的东西.大概提一下业务的内容,薪资不是自己考虑的东西,只关注技术,如果过关自然接下来有人来谈业务,不过关的话那就可以回去等通知啦.

薪资不敢开12K以上还敢写精通两个字的都是傻x


总结

  • 1.不管去面试还是面试别人,都是一次进步的机会
  • 2.找工作是实力加运气,但是加成比例也是要看运气的,多积攒人品总是没错的
  • 3.搞技术要保持危机感,不进则退
  • 4.好好努力,希望以后自己面试或者加薪,都能理直气壮

    以上.

Android面试总结2017版相关推荐

  1. Java面试宝典2017版

    一. Java基础部分......................................................................................... ...

  2. Java面试题2017版

    Java面试宝典2017版 一. Java基础部分---------------------------------- 7 1.一个".java"源文件中是否可以包括多个类(不是内 ...

  3. java面试宝典2017

    点击下载:<java面试宝典2017> 更多Java面试题微信搜索公众号:javafirst Java面试宝典2017版 一. Java基础部分7 1.一个".java" ...

  4. 机器学习面试经验--2017年持续更新

    机器学习面试经验--2017年持续更新 搜狐面试算法实习生 岗位搜狐后台开发(机器学习NLP) 10:00--11:10 1.首先自我介绍,blabla简单介绍了一下本科研究生学校专业方向,面试官开始 ...

  5. 普通二本的辛酸Android面试之路,满满干货指导

    一.自我介绍 应该算是起点比较高吧!985大学毕业后面一直在国外读研.之前准备面试微软但是可能经验不够,没有通过.经过朋友介绍我准备回国,积累一些开发经验.于是我面试了国内大厂BATJ,还有一些其他比 ...

  6. Android面试系列文章2018之内存管理之UI卡顿篇

    Android面试系列文章2018之内存管理之UI卡顿篇 1.UI卡顿的原理   60ftp –> 16ms: Android系统每隔16ms都会对界面进行渲染一次,造成卡顿的原因就是Andro ...

  7. Android面试总结(持续更新修改)

    ###Android面试总结(持续更新修改) 1.Android 的四大组件是哪些,它们的作用? ①Activity是Android程序与用户交互的窗口,是Android构造块中最基本的一种,它需要为 ...

  8. 程序员开发指南!金三银四Android面试的一些感受,这原因我服了

    前言 前几年移动互联网创业的风口,如今渐渐消失,移动互联网被巨头公司瓜分,一些创业公司倒闭了,Android 开发需求慢慢趋近于饱和.而当初移动互联网处于风口时,自学.转行以及培训机构出来了大量 An ...

  9. 2021年Android面试心得,系列教学

    Android没凉,只是比以前难混了 7年前Android异军突起,成了新的万亿级市场,无数掘金人涌入,期待可以一展拳脚. 那时候大环境下的手游圈,只要你能有个可以运行的连连看就能找到工作,走上赛道被 ...

最新文章

  1. 遇到 400、500 错误千万不要慌!
  2. 超简单JS实现把鼠标选中文字发送到新浪微博
  3. ubuntu中解决无法调节屏幕亮度的问题
  4. oracle sql 语句 start with ...... connect by prior .......
  5. 阿里P8架构师谈:深入探讨HashMap的底层结构、原理、扩容机制
  6. 推动Windows的限制:USER和GDI对象 - 第2部分
  7. 前沿 | IBM语音识别已接近人类水平
  8. 2022牛客寒假算法基础集训营4 签到题7题
  9. 迁移应用程序到.NET Framework 4.5:弃用类型与新特性
  10. 漫画解读软件开发模式
  11. (转载)New poker 2总算放出新固件了!
  12. 腾讯笔试题:纸牌游戏
  13. 微信小程序商城如何打印快递单
  14. HCL实验:用VRRP实现路由备份及负载分担
  15. 第五天 01-ftp服务器使用及arp欺骗获取ftp账号密码
  16. 简洁高斯朴素贝叶斯分类原理及python实现
  17. IDEA+MySQL+JavaFX之通讯录系统
  18. 一位 15 年资深 HR 直言:裁掉 35 岁以上老程序员,早已是公开秘密
  19. Python中pupl的基础操作
  20. 以色列《耶路撒冷之鸽》凄美感人别具特色

热门文章

  1. 关于oracle使用客户端无法卸载的问题
  2. 初识Android自定义控件之旋转罗盘的制作
  3. signature=c58a3c5e53e2eed44d09cd8589207f96,2006-2010 英语专转本第二部分词汇历年真题
  4. 使用PHP导出Excel时处理复杂表头的万能方法
  5. 18. Python语言的核心编程 · 测试考卷 A
  6. DDK Source Files Allot
  7. [转]清水吉治的设计效果图
  8. css3自定义checkbox radio的样式
  9. 隐藏NavigationBar
  10. 渤海银行总行信息科技部2020春季校园招聘面试总结