【Android】谈谈最近面试的感受
创始人
2024-03-04 21:19:55
0

因为意外原因,面临了失业。

今年的确是互联网最近几年最冷的了,机会很少,岗位竞争异常激烈。

最近面了几家公司,有几个心得想分享一下。

1、想让你过的面试官拼命在找你优点或者擅长的东西,不想让你过的面试官拼命在刁难你。

问一下开发常见的东西无可厚非,但是别人已经把核心点原理说出来了,你还让人讲无关紧要的代码细节,谁闲得蛋疼去背代码。看一遍框架,记住它的实现原理、关键代码就行了。那么多框架、SDK,把它们的流程细节背下来,真的是没有意义。
有的面试官可能刚刚看了一下某个框架部分源码,处于印象深刻期,来个面试者就去问细节,人家要能讲得出来,除非对方也是刚刚看过那个地方的东西,还没到冷却期。

最近本人也拿过几个offer,还包括两家上市公司,结合以前面试通过的经验,发现相同点就是面试很顺利,基本不会问你一些奇怪的问题。那些面完没有消息的,大多是问些奇怪的问题,框架、SDK非原理性的细节,边边角角的东西,问到你不知道的为止,聊一两个小时最后还是没有下文。

2、有的东西面试官自己都没弄明白原理,就去问别人。

一个面试官问我ViewModel,我说它的原理是在一个nonConfigurationInstance回调里保存Object类型数据,ViewModel就是通过它实现屏幕旋转Activity重建时保存和恢复数据的,面试官一脸迷惑,让我讲一个ViewModelProvider.of方法的实现,我说需要传入Activity和ViewModel的class,通过反射构建ViewModel实例,面试官反问我一定要传Activity吗?context也可以吧?(真的好让人无语,自己不懂就不要装懂还去问别人)

接着让我讲下Handler,我讲了一下Looper的过程,当我讲到消息分三种,同步、异步、屏障消息时,对方一脸迷惑,问我“什么是屏障消息?有这个消息吗?我知道有异步消息,在View绘制时发的,屏障消息是什么?”我说“在View绘制之前,scheduleTravesal里会发一个屏障消息,让异步消息优先执行。” 然后面试官还是一脸迷惑。还问我MessageQueue是什么数据结构,我说是单链表,我补充到它名字叫队列,但不是标准的队列,队列是先进先出的,MessageQueue不一定是先进先出顺序。然后面试官跟我掰扯了了下,说它就是队列,还举例说LinkedList可以往中间插入数据(我当时愣了一下,心想我怎么不知道,我只能表示嗯嗯)。

其实MessageQueue说它是单链表,是比较准确的,它就是用单链表实现的,说它是队列也没错,但并不是标准的队列。队列是一个受限的数据结构并且定义是先进先出的。面试官的期望答案应该是队列,我只能呵呵了。

还遇到一个面试官,也是问我Handler机制,当我刚讲完Looper没有获取到消息时主线程会休眠,消息来了会唤醒,然后面试官接着一本正经的问我,为什么Looper的for循环不会让app卡死?然后我又重复一遍刚才讲的,然后还耐心跟他讲了一遍屏幕事件机制。(哎,我也是相当无语,刚刚其实就已经回答了这个问题的答案,怎么像对牛谈琴一样的,面试官到底自己弄没有弄明白,你自己不明白,别人怎么回答都是错的,网上找面试题也要过脑子啊)当我说没有消息时,主线程处于Sleeping状态,面试官反问我是Sleeping状态吗?然后我又耐心告诉他怎么查看线程状态。面试结束也是杳无音信。

3、有的面试官根本不是诚心在招人

上来就问项目中遇到过什么难点?怎么解决的?或者某某问题怎么解决?当我自信满满、费尽我这些年之所学、苦口婆心跟他讲完,最后面试结果还是杳无音信,我就严重怀疑对方是来套经验、套方案的,根本不是诚心招人。

就说项目的难点,别人说出来难点时,面试官又觉得这算难点吗?还有其它的难点吗?有时候我真的很想反问面试官,你所谓的难点是什么?工作这么多年,哪有难点不难点的,只有知道不知道而已,不了解某个知识点,不知道怎么解决,这时问题就是难点,当你了解了某个知识点,发现原来这么简单,它还叫难点吗?再说了app开发,真的没什么难点不难点的,你知识点了解得越深,知识面越广,基本上没有什么难点。真要问,问些原理,不就行了。难点,有多难啊?

4、面试官不知道哪来的优越感

大多是一副高高在上的样子,别人回答的跟自己的知识库不一样,就觉得对方是错的,想去纠正一下时还是有很多顾及,显得很无奈。面试官可以随意问别人问题,知道不知道的都去问,面试者也只能老老实实回答,将自己掏空。

就像当你练就一身武功,被人拉到小黑屋,要你把武功传授给他的那种感觉,你还得乖乖就范,谁让你是应聘者呢,知道不知道的都得告诉他,背后还可能说你很垃圾。就像别人打你一下,你还得装作没事。就像理所当然给人培训一样。

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...