本人目前在一家知名企业担任Android高级工程师,工作八年来面试不过不少Android工程师求职者,前后累积有两三百人。在本文内容中,小编将结合本人的面试经验,给各位正在找Android开发工作的小伙伴提出一些面试前的准备建议。
1.简历需要包含的要素,一个都别落下
简历是求职者的一张名片,为了能更吸引HR的注意,一定要直接的在简历中表明自己的教育背景,工作经验和项目经验,这样才能让他们将这份简历纳入考虑范围。
2.工作描述该如何写
一般情况下是按倒叙的格式写的比如:
按此格式写之前的工作情况
这部分的内容应当尽量靠前,在罗列工作情况时,请大家注意如下的四个要点。
1.工作情况可以和项目经验分开写,一般会在后继的项目经验里写具体用到的技术框架以及所做过项目的细节,在这里的工作情况描述里,可以不用过于复杂,让招聘方看到你之前的公司情况即可。
2.尽量别出现长时间的空窗期,比如上份工作是6月份介绍,到第二年3月份才开始下一份工作。如果出现三个月以上还没有工作的情况,可以将上份工作的结束时间延迟致最近的一个时间,或者在简历中说明情况,比如这段时间因为家里的要求备考公务员啥的,总之要有个说得过去的理由。
3.在简历上千万别让人看出你每份工作都做的不长,因为跳槽太频繁会让面试官觉得你也在我公司工作也不会做太久的想法,但不能随便作假。比如我见过的应聘者里面,有部分人会为了不让面试官看出他换工作太频繁,就将简历上的两家公司的工作时长合并成一家,虽然说很多公司都不会去查,但如果遇到会做背景调查的公司,就会非常尴尬,所以这种做法有一定的风险性。
4.需要写上合适的离职理由,如果你工作换的太频繁,肯定会引起面试官的质疑,这时候一个合适的理由就非常重要。当面试官问起为什么会从上家公司离职时,主要是为了了解求职者的工作稳定性,因为公司你在培养员工是也是需要成本和精力的,培养不稳定的员工就等于浪费成本和精力,公司在招聘员工时会比较注重这一点。所以千万别说工资太低,工作量太大,老实加班等吐槽公司的理由,可以这么说:“原来的平台已经基本稳定,个人发挥的空间越来越少,不想再留下去混日子,希望找个更大的平台,参与更多有挑战的事情,收获更大的成长。”
3.尽量把学习培训项目往商业项目上靠
商业项目是指能挣钱的项目,和它对应的就是些不以挣钱为目的的学习项目。正因为客户付了钱,所以商业项目的要求要远远高于学习或毕业设计项目,这也是为什么招聘公司会看重商业项目而会主动过滤学习项目的原因。
4.描述项目的技巧
我们根据职位的工作内容,从一下几个方面描述项目经验。
第一,简单描述一下项目的背景,比如:项目时间范围,客户是谁,项目规模有多大。比如从从x年x月到现在(这个时间范围至少是最近半年),我参与了宅豆App的开发。这个项目组的构成是,一位项目经理加我们5个技术人员,项目时长大概6个月左右。
第二,大致描述一下项目的需求和包含的模块,然后简单说一下你负责的模块,同时说一下在这个项目中运用到的开发工具和主要技术点,如下是范例。
该项目是一款专注于发现和分享提高生活品质的科技玩物的APP。包括以下几个板块:免费试用、发现与分享、晒自己的好物等等。项目采用MVC架构,我主要负责了社区模块的编码开发,用已经封装好的RecyclerView来实现界面的展现,用Picasso来实现图片的加载,通过PhotoPicker来实现照相上传的功能;通过PagerSlidingTab,来实现tab栏和ViewPager的联动效果,通过SearchView来实现搜索的功能,将搜索到的内容用RecyclerView展示。
5.在简历中添加一些亮点
如果能在个人技能这个模块中,填上与应聘职位需求相匹配的技能,这种简历属于“达标”,可以纳入考虑范围。比如:
6.什么样的简历能通过筛选
从面试官的角度来看,除了学历这个硬性要求外,如果能满足以下四点要求的话,一般会有面试机会的。
这就是简历上基本信息的修改方向,而且在投递简历时,可以根据目前岗位要求,微调简历。
1.别紧张,因为面试官什么都不知道
面试官也是人,在拿到你的简历后,一时间没办法核实你简历的真实性(一般是在公司录用后,可能会做背景调查)。更何况,你做的项目是以月为单位算的,而面试官最多用30分钟来从你的简历上了解你的项目经验,所以你对项目的熟悉程度要远远超过面试官,所以你一点也不用紧张。如果你的工作经验比面试官还丰富的话,甚至还可以控制整个面试流程(笔者在面试方面成精后也经常干这种事情,大家一定也能行)。
既然面试官无法了解你的底细,那么他们怎么来验证你的项目经验和技术?下面总结了一些常用的提问方式。
2.面试时的错误表现
我们在面试的时候,如果出现以下表现,那很可能过不了面试,请大家注意。
3.面试中介绍项目的范例
第一步,介绍项目的基本情况
可以这样说,这个项目是一款xx类型的App,有哪些模块,其中我负责的哪个模块,项目周期多长时间。这里可以谈一下业务,别深入,因为面试官不熟悉,也不想熟悉候选人的业务,这块时间控制在1分钟之内。
第二步,介绍项目里用到的关键技术
比如说,在这个项目里,我用到了Android framework框架,用Picasso来实现图片的加载,通过PhotoPicker来实现照相上传的功能;通过PagerSlidingTab,来实现tab栏和ViewPager的联动效果,通过SearchView来实现搜索的功能,将搜索到的内容用RecyclerView展示。这块可以根据自己的情况来介绍,时间也别太长,一分钟就够了。
第三步,结合业务讲用到的技术,但是别展开:
比如有的职位需要有性能优化的经验,那么可以说,测试人员反馈这个项目在启动时会出现卡顿,闪退等现象,这个时候我会使用PerfDog工具来分析卡顿的原因并对其进行优化。
4.介绍项目时注意归纳要点
从上述介绍项目的范例中,可以归纳出相关要点如下。
1.框架是重点,但别让人感觉你只会山寨别人的代码
一般工作在3年内的候选人,大多仅仅是能“山寨”别人的代码,也就是说能在现有框架的基础上,照着别人写的流程,扩展出新的功能模块。比如要写个股票挂单的功能模块,是会模仿现有的下单流程,然后从前端到后端再到数据库,依样画葫芦写一遍,最多把功能相关的代码点改掉。
2.别单纯看单机版框架,适当了解网络通信机制
我们的项目在完成之后最终都是要通过互联网让用户使用的,所以说网络通信是Android工程师的一个必备技能。下面我列出些网络访问的知识体系。
3.Android核心技术方面,围绕性能优化和Framework准备面试题
Android性能优化这块的面试题,网络上有很多,不过在此之外,大家还应当着重关注Android framework方面,下面列出些面试上常问的问题:
通过上述的问题,我其实不仅仅是为了观察应聘者是否掌握,还要看他是否会运用。
1.哪些问题面试时大概会被问到
在面试中,不管如何引导面试官,以下这些问题还是大有可能会被问到的,所以在面试前一定要做好准备。
1。个人技能这块提到的技能要点,比如上面所提到的熟练应用TCP、UDP协议,Socket,HttpURLConnection等网络编程,熟悉Volley,OKHttp网络请求框架等这些知识,面试可能会问你这些问题:
2.你在介绍项目时抛出的技术关键词,比如你在面试过程中介绍项目时提到了负责App界面的布局搭建和优化以及逻辑代码功能的实现,那么在介绍完项目后。面试官可能就会问,“如果这个界面出现了卡顿,你会怎么去优化”,简历中说明用到的技术,都有可能会被问到。
2.举例说明该如果准备面试问题
下面给出准备问题的技巧。
这里给大家准备了一份Android面试题,用pdf的格式保存,有需要可点击下方私信获取。
由于篇幅太长,下面给大家分享两个部分的面试题:
Android 基础组件部分
Android之IPC机制部分
在回答问题的时候,大家可以结合底层代码说明,这样面试官一定会对大家刮目相看。
从面试官的角度来看,哪些人能面试成功?
如果大家在面试前没准备好,或者准备不到位,那只能是以下结果:
但如果按照上述方法准备,大家很大程度上能得到如下的收获。
这就是本文全部内容,感谢大家看完本文。最后,为了帮助大家更快的找到工作,小编这里准备了一份Android面试题(pdf格式的),内容包含答案,分享给大家,有需要的朋友可以私信获取。
内容展示: