【Android】复习两个月面试美团,Offer舔到手了吗?(内附进大厂诀窍)

前言

这是我17年的经历,觉得还挺励志的,希望能帮助到一些正在迷茫的同学。

是去美团送外卖了?有配电瓶车吗?

答:亲,有配的哦,开起来贼顺滑。啊呸,说啥了,咱进的是正儿八经的技术部门


咸鱼的现状

时光回到2017年2月初,当时刚过完年回到上海,此时的我已经毕业一年半了,和大多数咸鱼一样,上班就是CRUD,下班就是看剧、玩游戏(英雄联盟、手游都玩)。

当时我的工资一个月到手就5k出头,但是因为在甲方驻场开发,加上差补餐补有接近8k,还包住。每到周末几个小伙伴一起打牌、一起搞情、一起洗脚,日子过得很是滋润,当时其实挺满足的。


咸鱼的自我救赎

让我萌生想跳槽的根本原因已经忘了,想了很久没想起来,可能是受其他小伙伴的影响吧,有了这种想法后就开始准备起来了。

刚开始只是每天下班后躺在床上看别人的博客学习一些东西,一般是22:30看一小时左右,当时就看些比较基础的知识,就是类似于:Fragment相关、Activity相关、Service相关等等这类比较基础的知识。

想跳槽的想法有了之后便一发不可收拾,如果说刚开始每天晚上看1小时只是在试探,那么半个月之后我便全力投入面试准备了。

当时工作上的事情不是很多,每天花个两三个小时基本就能应付了,所以其余的上班时间我都拿来准备面试了。

准备面试的方式主要通过看别人的博客、看源码,内容主要是Android核心知识和 Android面试题。

从二月初准备到了三月底,这期间我主要干了以下几件事。


1.看面试题

这期间我看了很多套 Android 面试题:

很重要的一点,看题要带着理解、带着思考去看,将题目与实际开发的内容结合去理解,这样很容易就记下来了,死记硬背效果不好。

还有看面试题不能只看一次,需要反复看,就像你高中准备考试那样。看完这些面试题后,我能很自信的在我简历写上了:

  • 具有扎实的Android基础, 熟练掌握Android下的四大组件以及它们之间的数据传递、五种常用布局并能灵活的运用。
  • 熟练掌握Android常用的系统控件,具备自定义控件的开发能力,能够利用系统控件及自定义控件完成常见UI界面的绘制,手机屏幕的适配。

对于flutter这听着就高大上的东西,当时我能做的就是带着理解把下面这几道题目背的滚瓜烂熟,在此之前我压根就不知道flutter。

  • 在flutter里streams是什么?有几种streams?有什么场景用到它?
  • 简单说一下在flutter里async和await?
  • future 和steam有什么不一样?
  • 在什么场景下使用profile mode?
  • 列举在flutter的状态管理方案?

就这5道题目,不能再多了。在当时的面试中无数次被问到,我都能很自信的答出来,帮我在面试官心中加了无数的分,估计面试官还以为我对flutter有所研究,整个人的逼格顿时就上去了。

对于背面试题,我只能说两个字。


2.源码初探

在看完上面的面试题后,已经能应付很多问题了,但是好像还缺了点什么?没错,就是能让你装逼的源码。当时我选择了常用集合的源码,当时我这菜比也只能选这个了:Hook、Transform、Binder、Handler 等等,基本都是边看源码、边对着别人的博文跟着一行行的学。

看完这些源码后,我把它们全写到简历里去了,因为这是当时我觉得自己为数不多的亮点了。

  • 深入学习过Hook、Transform、Binder、Handler 等常用集合的源码。

自己深挖过(例如看过源码)的知识点被问到时,一定要抓住机会表现,让面试官感受到自己的深度,这些都是加分的点。


3.项目准备

除了技术知识外,项目也是必不可少的一环,但是不需要准备很多,只需要挑2-3个你最牛逼的需求点准备就行了。我当时找了很久,就找了这么几个很 low 的点:

  • 使用TabHost控件,实现功能界面切换
  • 继承SQLiteOpenHelper类,实现功能数据存储
  • 使用Cursor查询数据信息呈现界面
  • 自定义Aaapter,呈现信息及提交数据
  • 重写onResume方法更新界面数据

第2和第3点其实就是来凑数的,打扰了。

还记得当时做这个需求的时候还挺痛苦的,做了好久。但是真正到了需要用的时候。

这也是我很想传达的一点,项目中遇到难题时千万不要总想着退缩,这些解决难题的过程、解决的难题,都会让你快速成长和受用终身

这些内容就是我开始面试前的全部准备了,从2月初到3月底,差不多准备了1个半月,当时的简历在现在看来,不是一点点 low啊,但是当时已经是我的极限了。


咸鱼修炼出山

准备好了之后就是疯狂投递简历了,各种知名的招聘网站都要去投,也没有什么挑选的说法(唯一可能就是尽量选互联网公司,还有就是像阿里腾讯这种大公司,咱是不敢投的),只要是招2年Android的投就完事了。只要能给个面试机会,咱就得谢天谢地了。

很多很多的投递都石沉大海,但庆幸的是在海投之下,还是拿到了不少面试机会,当然大多都是听都没听过的公司。

偶尔收到一些稍微有点名气的公司面试邀请时,心里真的乐开了花,可以对着这封邮件反复看好几遍。

面试之前给自己定了个目标——13k,每次hr问我时我也就讲13k-15k,高了不敢喊,心虚,觉得自己就是个垃圾,根本不值这个钱…

从3月底面试到了4月底,总共面了20来个公司。基本是每天2个面试,上午下午各一个。早上室友还没起床,我就已经出门了。

早餐都是在三林东地铁站附近的巴比馒头解决的;午餐就在面试公司的附近找家麦当劳解决。那段时间每天在路上奔波的时间至少四五个小时,但是完全不觉得累,整个人对未来充满了希望。

也多亏了这一个月的面试时光,我走过了上海的很多地方:漕河泾、张江高科、唐镇、人民广场、陆家嘴、中山公园,之前在上海呆了2年去过的地方还没我面试期间去的多。


差点FirstBlood

第一天下午面了链家网,当时面了两轮技术面,每轮两个人,除了一些技术问题外,问了很多场景题,比如:用户来链家网看房,怎么推荐合适的房子?

这些都是我没准备过的问题,当时只能随机应变了。还好我靠着自己的聪明才智(一顿瞎扯)混了过去。现场两轮技术面应该是过了(至少也应该是个备胎),当时通知我总监不在,晚上进行电话面。

我还记得当时出来时心里贼高兴,总监面不就是吹吹牛逼吗,感觉就要起飞了。

总监面一开始也如我所想,就问些:“平时工作之外都干些啥啊?”,“有在学习什么技术吗?”这类的,结果我自己作死提了个在学音视频,当时我确实在看这个,但是还是一知半解,结果被问了几个问题就凉了。当时觉得自己是个傻吊,想喂自己吃屎,可能错过了自己最好的机会。

如果当时链家发offer,只要不是侮辱性薪水,我是必去的。其实就算是侮辱性薪水,只要不是太过分,我估计还是会舔着去的…


几次尴尬的经历

面试有时候就跟碰运气一样,运气好点,问的全是会的,运气差点,两句话就被轰出来。

有一次和三个同事去陆家嘴参加招聘会(当时还是蹭的他们的面试邀请),来回两三个小时的车程,面试2分钟就结束了,真是充电5小时,通话2分钟。当时我们还互相调侃说,见识了繁华的陆家嘴(下图就是当时拍摄的),也不枉此行了。从此以后,我再也没参加过招聘会。别问,问就是记仇。

还有一次去面一家地产公司,当时面试官正在小房间里面另一个人,看到我到了就把我也叫进去了,我当时心想:还有这种操作。然后面试官就问了我两个问题:

(1)RecyclerView和ListView的区别。

(2)前台切换到后台,然后再回到前台,Activity生命周期回调方法。弹出Dialog,生命值周期回调方法?

当时我没答上来,然后就被轰出来了。


冥冥中注定

运气总是守恒的,有一些运气不好被秒杀的经历,必然也会有一些运气好拿到 offer 的。现在回想起来,当时能进美团真是冥冥中注定的,有无数次我都已经差点入职其他公司了,但是最终因为各种阴差阳错,最终都擦身而过。

谷米实业:1轮笔试,2轮技术面试。技术负责人比较看重逻辑思维能力,让手写代码,还问一些智力题。给的税后11k,由于五险一金的问题没去。

飞牛网:背靠大润发,当时觉得很高大上,给的税前13k,我当时都在看房子了,最后由于一些原因没去成,具体啥原因我自己也忘了…年纪大了,记忆力差的很。

1药网:创始人是1号店的创始人,当时也很想去的一家,给的税前13k,当时已经接了offer准备去了,结果通知面的部门没有hc了,临时要我去加面另一个部门。

当时加面了两轮,第一轮是部门技术老大面,可能是由于之前已经通过了其他部门的面试,有些问题没答出来,老大也很耐心的引导我,看得出来还是比较喜欢我的。

第二轮的直属上级看起来比较忙,就随意的问了一题。没错,就是那道我还专门水了一篇文章的题目:死锁的四个必要条件?

显而易见的,这道题目对于当时的我来说太难了,而且也没法瞎掰,我装模作样的思考了一会后,尴尬的说了不会,老大还安慰我说没关系。尽管加面发挥的一般,但是最终还是给我发了offer(我一度怀疑是不是那个老大对我有什么企图)。不过由于自己觉得在直属上级面时发挥的太差了,最终决定不去。

现在看来自己当时不仅菜,还作死。


幸运女神的眷顾

拒了1药网后,选择已经不多了,就剩2个未面试的:平安医疗和美团,并且上海自己能投的基本都投完了,当时决定如果最后这2个没满意的就到深圳去(都跟父母和深圳的同学打好招呼了)。我不是一个相信运气的人,但是这次幸运女神确实眷顾了我,让我抓住了最后一根稻草。

进美团并不是一帆风顺的,拿到面试资格都费了好大劲,当时自己的简历太普通了,大概率入不了美团hr的法眼,但是我还是厚着脸皮投了很多部门,有些部门还投了很多次。终于,在我的死缠烂打下,有一位善良的hr给了我一次机会,这是我进美团的第一位贵人。

可能有同学有疑问,为什么要重复投一家公司,甚至是同一个部门?

答:每个公司都有很多部门,每个部门的hc数和招人标准都不一样,即便是同个部门,如果hr不同,标准肯定也不一样。重复投相当于是在碰运气,努力让更多的hr看到我们,努力让hr在不同的日子里看到我们,兴许hr今天心情好就给我们个面试机会了。

3月底开始面试的,到面试美团的时候已经4月底了,这面试的时间里,我们不能荒废了学习,还是要持续不断的复习和学习。当时我就在这1个月的时间里学了:OkHttp、性能优化、Jetpack高级教程,而且在面试美团就用上了…,你敢信。

美团1面的小哥是我的第二个贵人,这个老哥贼实在,就对着我简历写的专业技能一个个的问,真的把我写的每一个点都问了…

咱这么老实的人,写在简历上的都是比较有把握的,因此这个小哥的问题我基本全答上了。不仅过了1面,而且可以确认小哥给我的评价很高(因为后面入职发现我比其他同学的定级高一级)。

美团2面就是主要问项目了,我又把我那蹩脚的项目拿出来讲了一遍,面试官问的很细,把整个项目从头到尾细聊了一遍,如果没准备好可能会扛不住,最后还给出了一些他的建议(其实就是装一波逼)。

还有就是简单的问了几个技术问题。Hr 面就比较简单了,一般是介绍当前的业务,问我对业务是否感兴趣啊,平时有没有在学习等等。对于这些问题,舔就完事了,把握好舔的尺度,不要舔的过于浮夸一般都莫得问题。

不过也会有一些送命题,例如:能接受的底线薪资,如果低于该薪资会放弃本公司的机会。

我当时是这么回答的:“底线薪资:无,由于对贵公司的前景比较看好及相信贵公司会给出一个合理的薪资,本人将考虑贵公司给出的任何薪资”。现在回头来看这个回答,舔的还算凑合,有一些细节在里面

就这样,我不可思议的拿到了美团的offer,薪水也超过了我的预期。


进大厂的诀窍

经过这几年的摸爬滚打,我发现进大厂确实有一些诀窍,对于和我一样背景一般的同学,只要你抓住了诀窍,进大厂不是梦。

1)一定要提前准备,至少准备个一个月,网上的面试题多看看,对于那些高频题目,带着理解去学习,实在不能理解的就背下来,大家高考的时候不都是背过来的。

2)大厂通常有很多部门,每个部门的hc数和招人标准都不一样,即便是同个部门,如果hr不同,标准肯定也不一样,重复投简历可以增大我们拿到面试机会的概率。同理,重复面试不同的部门,也可以增大我们进大厂的概率。

3)大厂经常会布局新业务,新业务需要快速启动入场,hc通常会有很多,因此招人的标准会稍微降低,这个时候是个绝佳的机会。我当时进的就是个新的业务部门。


写在最后

可能有人会觉得我进入美团太幸运了,是小概率事件,不值得参考。

答:进入美团确实有运气成分,我自己也是这么觉得的。但是在大厂混了几年后,我发现这真不是小概率事件,很多人都是这么过来的,好多同学都是面了N次才进的大厂。

有时候,选择比努力更加重要,机遇比奋斗更加重要。但是,机会只留给有准备的人。我们只有时刻准备着,才能在机会到来的时候,去抓住它。

我很幸运的是,当我准备好的时候,机会来了。从此以后,我变成了一个相信运气的人。

我相信,越努力,越幸运

最后,在这里我也分享一份干货,由大佬收录整理的Android学习PDF+架构视频+源码笔记,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

如果你需要,可以【私信】我获取,也可以添加粉丝群:【1087084956】获取。

猜你喜欢

转载自blog.csdn.net/ajsliu1233/article/details/111567966