八年老 Android 开发谈:垃圾中的战斗机,offer 都发了,Android 大厂面试真题解析大全
你如何看待面试?
任何企业招聘重要岗位时都不会只安排一个候选人面试,通常都是两到三个甚至更多,最终来优中选优综合评估,筛选出与企业所需岗位能力素质要求最接近的人,所以对求职者来说面试是一场比拼,一个竞争的舞台,比的是素质、经验、能力,也是思维方式,以及对岗位的认知度,拼的是耐性,临场发挥,对企业的认同感,比拼的奖品就是录用通知书,所以说应聘者以什么心态,怎样的精神面貌来对待面试这个过程,决定了你在面试时的结果。
并且我觉得面试本身并不能完全评价一个人的实力。面试通过的人,也许只是恰好在面试时遇到了自己熟悉的问题,面试不通过,也有可能是面试官自身的问题,并非每个面试官都具备客观评价别人的能力。
换句话说,面试没通过也许是面试官没有发现你的才华,面试通过了也并不代表你就能胜任工作,因为进入企业之后可不是每天负责回答面试题!
网上关于面试最多的是什么?就是面经,他有些介绍了一些“装逼”的方法,还有所谓的“面试技巧”,我本人的话是不太认可的。技巧需要有,这是为了让你更好的展示自己,而非坑蒙拐骗。我更想展现一个真实的自己,如果面试官不认可,说明我们没有缘分,或者说自己的能力还不够。
在招聘中,这类情况一直在发生。我们让工程师通过严格的筛选程序,问他们一些有挑战性的问题,但在把他们招进公司之后,只是让他们做一些枯燥乏味的事情,比如负责由五六个服务组成的系统,或者让页面看起来更漂亮些。我并不是说这些任务就不需要技能,只是这些任务所需要的技能与大多数面试涉及的内容根本不一样。
既然 BAT 们是众所周知的福利待遇发展好,那自然其进入门槛也水涨船高,我记得曾有媒体戏称进入 BAT 的难度不比考公务员低多少。
虽说如今招聘更偏重能力,但当出现僧多粥少的情况时,也必然需要进行硬性条件上的筛选。其实这也是没有办法的事情,不存在完全学历歧视的问题。你想,招聘一个人,大概要看 100 份简历,面试 10 个人,最后才能选中一个。但从工作量上来说就是一个很大的事情,只能硬性条件卡严格一点。
筛选过后,还要进行几轮的面试才能最终确定下来,岗位竞争非常激烈。但在经历了激烈的面试,开始入职后,却不乏有人发现岗位所需技能与面试所说差距过大,这是便有网友称:面试造火箭,工作拧螺丝。个人成就感难以满足,就萌生退意,递交辞呈了。
我相信在很多个领域里,有很多的人拿到的报酬已经远远超出了他们所从事工作的难度。有时候是因为他们是这个领域唯一知道怎么做这些事情的人,有时候是因为他们所在的公司无法从人才市场上招到更好的人,有时候是因为其他工程师故意过
度设计,这样初级开发人员就需要花费很长时间才能理解它。无论如何,如果我们想要保持高薪和不被踢出局,就不能停止学习。加强知识的广度和深度,并学会如何将炒作从真正的突破性技术中过滤掉。
你为面试准备了些什么?
就算你觉得你所有的东西都准备好了,但也不是你拿着简历奔赴各个面试你就有机会
如果你为自己做了份详细的职业生涯规划,那你也应该为自己做一份详细的时间管理计划表。好的面试一定不是拿着简历跑出来的。
资历深的 HR 可以清楚的看出优秀和普通面试者的区别,当然了他们可能也会问这样的问题,“你觉得哪首歌最能体现你的职业道德?”“EXCEL 有多少种算法公式?”“你洗澡的时候都在想什么”当然,这些问题也都是真实存在的。但是面试的重点一定不是寻找和你喜好相同,品味一致的人。
面试需要准备些什么,在这里我就不给予评价了,各大面经里面都有,大家去看看就好了的。但是大家在刷面试题的时候一定要注意,不要仅仅是去背答案,浅步的了解会让提高你面试的成功率。
总之,面试的本质一定不是一问一答,如果你还想要让自己在面试过程中魅力十足,那就带一份工作计划过去,这不仅是展现你的诚意,更让 HR 看到的是你的工作思路和专业实力。
接下来我给大家分享一下我的经历吧!
分享的多也没有什么用,就举例一次映像十分深刻的吧。一次很偶然的机会,被猎头推荐到阿里巴巴面试。简历被送到阿里后,会有几天简历审核期,这个过程会先从简历上筛选掉一部分人。简历审核通过后,会有负责技术面试的人对你进行一个电话面试,我当时接到电话感到很突然,因为简历都已经投递一周了,然后就匆匆跑到楼下进行电话面试。
面试问题还记得一些,一部分已经忘记了,为了防止再忘记,所以便写了出来。
1:你是如何理解 Android 操作系统的。
2:是否熟悉 framework 层,如果熟悉,那就对 framework 做个简介。
3:是否熟悉多线程,如果熟悉,介绍下线程。
4:对象锁和类锁是否会互相影响,会举例子让你判断锁的使用是否恰当,并说出原因。
5:是否熟悉 Lopper 架构,如果熟悉说下其原理,如果你自己实现,你会怎么实现。
6:自定义控件原理,及消息分发流程。
7:binder 工作原理。
8:ActivityThread,Ams,Wms 的工作原理。
9:如果工作中需要修改 framework,你如何寻找切入点。
电话面试就这么多内容,自我感觉给回答打了 75 分,然后就是等通知;又隔了两天,阿里的 HR 打电话让我去指定地点面试,心里有点紧张,因为想给马云打工的人太多,竞争激烈程度可想而知(哈哈放平心态就好了,每个人都会有一个最好归宿)。
和技术负责人聊了聊,大概 2 小时左右。
主要聊的是 framework、binder、并发容器、线程并发和对象锁,再就是 ndk 使用的是否熟练,是否熟练 hook 技术等;还有你遇到过什么技术难点,是如何解决的。还有你读过什么开源工程,有什么感想,你是否考虑过做一个开源工程。最后就是设计一个多线程并发处理大数据量,然后刷新 UI 的架构。
最后结果是没能达到他们的期望,跟技术负责人聊的较开心,就留了联系方式。
**面试总结:**通过这次面试知道自己还有哪些不足,要继续努力,功夫用在平时很重要。
面试收获,注意看!!非常重要!!
一、提前准备面试所有问题的答案并重复练习
众所周知,面试就是由面试官向面试者提问,来了解面试者个人基本信息,考察面试者的工作态度、综合能力和专业能力。想要顺利通过面试,我们就得提前了解面试官经常会提问一些什么问题,这样才能针对性的进行回答。
二、重新回顾简历的工作经历和结果很重要
HR 们会通过询问你工作经历中的具体细节来判断这段经历的真实性以及你的专业程度。实习等工作经历是体现你专业能力的重要指标。
如果你无法详细地讲述工作经历的细节,HR 就有可能会怀疑你伪造工作经历。或许离你上一次的工作经历已经过去了很久,你可能已经忘记了很多细节。但没关系,你可以通过下面这样来回答:
你做了什么工作?
这个工作的目的是什么?
这个工作发生在什么时候?
由谁参与了这个工作?
在哪里开展的工作?你在什么情境下做的工作?
你如何做这个工作?结果怎么样?
另外,一定要记住,最好使用具体的数据来证明自己的能力,数据往往比天花乱坠的形容词来得更令人信服。
三、针对岗位量身制作一份求职作品集
一份好的求职作品集在面试中可以说是必杀技。一份优秀的求职作品集,一方面说明你对这次面试重视程度,让 HR 体会到你的用心;另一方面,可以展现你出众的专业技能。
你可以根据公司发布的招聘信息,提取关键词。提取岗位招聘信息中的关键词,熟悉工作流程,然后亲手去执行几遍,向 HR 展示你的成果。当然,如果你并不了解这份工作,也可以请教业内人士,指导整个过程,帮助你完善作品集。
四、自我介绍时,从这 3 个方面入手
无论是什么样岗位的面试都不会离开自我介绍,自我介绍那该说什么?正确的逻辑应该是:先表达自己对这个行业、这个岗位的热爱,然后表现自己的经历与岗位相匹配,最后突出一下自己在工作中的优秀表现。
热情:对行业、岗位和公司的热爱
匹配:展现你与招聘岗位的匹配度
出众:请将你的亮点展示出来
五、如何去回答综合能力题
在由专业 HR 面试的时候,最重要的环节其实是综合能力层面的提问。综合能力层面的问题一般是用来考察面试者的反应能力、沟通能力、学习能力、问题解决能力和领导能力等等。我们在回答的时候,尽量将你的思维过程讲明白,把结论讲清楚。
一般回答综合能力题的时候,你可以这样做:
什么工作?
你为什么要做这个工作?简单说明一下当时的背景
怎么会出现这种情况?你如何解决了这个问题?
评论