你的位置:首页 > 操作系统

[操作系统]android开发之路07(无硝烟的战争)


如何做一名优秀的android面试官?

如何做一名优秀的android候选者?

提到这个问题我不得不提起我们小升初,初升高,高生升本这几个历程中我们与出题人之间的无硝烟的战争。我们总是为自己的成绩担心,难道现在走向社会了这个情况不见了吗?很显然,并没有。那就是我们要面对的HR,这个群体负责在我们入职之前给予我们考核和评价。问题来了?我们如何才能在自己能力还行的情况下,成功接到offer。我个人的习惯,还是应该先了解HR在想什么,最后才是我们该怎么想。那么,就来看下HR在面试前他们需要考虑的问题(俗话说:知己知彼百战不殆)

因为本人不是一名HR,所以我经过整理,找到了一些关于如何面试他人的方法:

1.简历筛选

HR角度:看到简历之后,我要做好充分的调查分析,这是对公司的负责,也同样是对自己负责,因为这是我的职责。因此,我会在众多候选人中选择我最中意的那个。首先,应该从他的身上我可以看到和我们公司职位匹配的能力,在其次就是看他的个人情况,评判其到底是不是一个有潜力可以在我们公司培养的人才。或者,公司如果只是想找一个过来直接能干活的人,那么我应该去仔细翻阅这个人的简历,看看简历上是否有他的博客地址,或者GitHub地址,如果有,我就在面试之前去仔细查看。看看候选人的文章,和写的代码。做一个初步的判断,在接下来的面试过程中才可以有针对性的提问。

 

候选者角度:在制作简历的时候还是应该实事求是,会什么就写什么,不要只是为了美观,或者其他所谓的利益关系,而弄虚作假,这其实是在作死。因为HR不是傻子,当HR通过考量之后发现我作假,那么估计我在这家公司是没机会了。那么我该怎么做呢?我应该在简历中突出自己的重点技能,总不可能连突出的都没有吧!那么,我不适合干这个行业,还是回家养猪吧。。。所以自己的简历在自己的所有技能中有重点的突出个体,并附带自己的项目(这个难道没有?),那肯定是不可能的,如果没有,那就证明自己就对这个行业没有激情啊,那还进软件公司做什么?连个自己钻研过的东西都没有,这真的对吗??所以这一步,我最需要做的就是求真务实,对自己会的知识要熟练,对自己的项目架构及设计要能知其然并知其所以然。

 

2.技术面试:

项目经理角度:虽然我的技术水平已经很不错了,可是在面试的时候,我也不能总是问候选人我最擅长的领域,毕竟公司,总不能招的人都是一个模子刻出来的吧,每个人都有自己的优势,所以在面试过程中重点应该是在短时间内获取候选人特长,看这个特长是否真的和本公司提供的职位匹配。那么,开始提问?如果,候选人连自己描述的擅长的领域都不能讲清楚,那么就可以直接pass掉了。如果,他回答的很漂亮,那么接下就可以找几个比较有深度的技术问题去考考候选人。如果候选人没能回答出来,那么也没什么大不了。我可以好好观察下候选人的状态,因为一个稳重的人,是不会表现出胆怯和急躁的。就算他答不出来,也会很轻松的过度过去。看看他接下来会怎么圆场。这样也能反映出一个人的思维敏捷程度。还有就是在整个面试过程中多注意候选者的言谈举止,如果这个候选者语速得当,且能把问题讲的很清楚,那么应该是个人才。如果在面试过程中还能在交谈过程中让我眼前一亮,那么没有什么大的问题,offer肯定是给这位候选者了。

 

候选者角度:作为一名候选者,最担心的也就是这个环节了,因为担心自己表现不佳。其实,不需要担心,既然我来面试了,证明这家公司看了我的简历,他们需要我这样的人。那么我在面试过程中就要淡定,心态放好,从容的应对即将到来的问题。还有就是我的工作经验写的很清楚,所以他们总不会问一些太过于深奥的问题,所以我要自信。把我擅长的表达出来,让他们看到我的价值。他们问我基础的为问题,我没问题,问我项目,同样没问题,因为我是好好的去钻研过的。面对不会的知识,我就所我不是特别熟悉,可以反问面试官?这个在项目具体开发中是用来做什么的?等他回答完了之后,我就找一个类似的我熟悉的知识过度过去,然后告诉他编程都一样,你刚才讲的和什么什么不是都类似吗,如果你们真的在开发中会经常用,那么我花点业余时间,自学就没问题了,毕竟这个东西确实不难啊。回答到这里(在这个过程中要表现出沉稳和淡定,不要过度,表现的太过于傲气,估计适得其反),然后继续接下来的问题会答。。如果我在之前我熟悉的问题回答的漂亮的情况下,这个offer估计是稳了。因为面试官,从整个面试过程中,可以看到我掌握了的知识的熟练,并且也看到了我对待难题的态度,以及我对待技术的激情。

3.面试问题:

HR角度:

①Android经验:如果不是校招,Android经验是必须的,我比较喜欢问一些基础概念与技术原理,比如Activity,View,Window的理解。各LaunchModel的使用场景,View的绘制流程,Touch事件机制,Android动画的原理,Handler,Looper的理解,Android跨进程通讯的方式,Binder的理解,Android Mashup设计的理解等等。

②java水平:基本就是Effective java和Think in java里面的重点知识。比如:考察final用法,反射原理,注解原理,java编译过程,GC等一些常见的问题。

总之这个阶段接就是问一些比较典型的问题?找一些稍微有深度的问题问。

候选者角度:面对这个问题,我想能做的就是对知识不能总是停留在表面,应该根据时间合理的深入了解。这也是成为大牛程序员的必经之路,同样也是能够进入理想企业的最合理的应对策略。

这篇文章就写到这里了,毕竟每个人的性格都不同,经验也层次不齐,所以我只是说了一个大体的方向,具体怎么做,我想大家心里早已明白,不管你是一位HR,或是面试者,都希望我们能够认真做学问,做实践。不要过多的在意外界,你若盛开,清风自来。我相信未来总有一天,我们中国的软件开发者能够走在未来世界的前端 ! !