5年前手持4个大厂offer的我,今天面试Android竟被一个小伙子怼得体无完肤

4,312 阅读9分钟

今年Android的求职行情令人堪忧,一开始自己不信邪,现在我屈服了。

1)先说说自己面试前的工作状况

我在2011年进入的Android 行业,没错我是转行的。本科是机械电子专业,大学就开了一堂C语言的课程,而且,这个课程基本上早就还给老师了。现在想来,我那时真的生活在一个非常好的时代,我毕业前听说Android开发非常火,然后身边有很多学长通过培训进入了一个软件开发行业,薪资很高,所以,我带着将信将疑的态度也报了一个学校附近的Android培训班,名字我忘记了,一个不大的机构,一个老师他自己一个人教课,那段时间是我大学学习东西最多的时候,经常在吃饭的时候还在想着代码。 学习了4个月,没错,我进入了IT 行业实习,深圳的一个公司,还是上市公司,薪资水平我们班最高,7.2K一个月,当时我非常满意(12年6月正式转正),同班同学能拿到5K以上的寥寥无几。

随着时间变化,到14年,公司给我开的工资已经有16k了,几乎与我刚进公司翻了两倍,但是我并不满意,我了解到的身边同事出去别的公司可以拿到20K以上,于是我也跳槽了,我去面试,面试结果说实话感觉好轻松的拿下了4个大厂的offer,记得是 百合网,大疆无人机,顺丰,YY语音。薪资最高的开到了30K+,加上年终奖什么的,应该可以到50W一年,我毫不犹豫的选择了这加公司,一待就待了2年。 还记得是16年,身边一个玩的好做后台的哥们跟我说,他准备去创业了,做智能移动医疗设备在深圳,问我要不要一起去,有期权,初始创业团队,天使轮,薪资也比现在的公司高,我顺利的年薪到了60W,带团队。当时想,我能够独立开发一个app,能够实现各种功能,然后带着一个6人的开发团队,职业发展不错,我现在想起来感觉真的很好,很无知。

很快时间到了20年,一场疫情,公司发不出工资了,30+岁的我不得不找工作了。起初是很担心的,也很难受,毕竟4年没有找工作了。

2)面试过程

开始修改简历,投简历,一开始我投的有,腾讯,招商银行,阿里,腾讯音乐,滴滴,小米。基本上简历都过了,一开始这些公司都发了面试邀请,应该与自己多年的工作经验和大厂经验有关。但是这个时候才是真正的内心难受的时刻才开始,因为,职场经验让我很会聊天,但是,技术问答却让我无话可说,真的非常非常难受。我一直自认为技术还是不错的啊,公司项目一直都是我在主打,项目游刃有余,需求皆能分配给下面的人完成。但是,一面试我才真的傻眼啊,那些技术人家要求的不是简单的应用,而是原理。每个点都是问原理啊,我晕了。虽然很难受,我决定还是总结一下,用这个文章来思考我这个现在想起来最近几年创业公司几乎没有成长的职业生涯。所有面试都在一面挂了,而且面试过程就是煎熬,我的痛苦从一面开始,一直到现在还存在着。

3)滴滴一面试题总结

在滴滴,一开始被问的第一个是,你知道广播BroadCast有哪几种吗?然后问我,都怎么注册?一开始想,这他妈不是侮辱我么?然后,他说广播通信的原理是什么?我他妈傻眼了,我看着对面那个其貌不扬的小伙子,说了句不知道,噩梦的开始...

然后问了我handler,原理,源码,looper的for循环的理解,for 死循环为什么不会导致anr?

reteofit源码也是,讲完源码,就问我里面的动态代理,里面采用了什么设计模式,以及设计模式的理解?

binder机制,MMap原理,为什么要用MMap

性能优化中内存泄露的理解,leakCanary的原理

事件分发机制里,view层的方法跟事件分发有关的是哪几个,做什么功能,举例滑动冲突的解决思想

自定义view 绘制流程,问完,就是问measure具体的绘制,onlayout的实现是怎么放子view的

网络tcp/IP协议,Socket通信原理,socket复用机制底层实现原理

然后还有Java语言方面的

线程的创建有几种,是sleep跟wait的区别,然后就是wait同步锁的原理,notify怎么打开的? 多线程的通信 进程间的通信

反射原理

类加载机制

arrayList底层

HashMap原理与冲突解决办法

算法题:两个非常大的数(long表达不了)相加,现场实现;

我依稀的只记得上面这些了,这么多问题,我用了大概1个小时完成了,60% 只回答了一些表面的东西,底层的一概不知,不知道我当时怎么能忽悠1个小时的,反正结果就是没有结果了,难受啊……

4)奋发学习

一场面试让我知道我是什么人了,以前真的认为自己是个人物,现在发现在技术面前我什么都不是,什么管理啊,什么带团队啊,都是浮云,一个移动开发团队6个人,我充其量就是个分配工作任务的,甚至是一个组织了大家学习,却自己没有学习的人,虽然我跟进业务这块做的很好,但是这并没有什么卵用,离开这个团队,我啥都不是,还是技术来的实在。所以,我决定静下心来花点时间好好准备和提升,去别的地方当主管首先人家需要的是你用技术证明你自己的能力,你的能力得到了证明,人家才会逐步的用你当主管,要不然,你当了主管,当了架构师又怎样,你站不稳的,下面人压根不听你的,你还得走人,非常现实的事实。

5)讲解课程大纲以及学习过程中的总结

在学习过程中其实也是非常尴尬的,一开始我是将面试的内容进行总结,总结完后开始对不懂的地方进行学习。总结的时候我再博客上找到了一个总结比较详细的地方,大家可以参考一下:www.jianshu.com/p/1a7cb6913… ,这里基本包含了我面试中遇到的基本问题,一开始我是对着问题去学习,可是学了1个月后,在这个月里面真的是除了吃饭睡觉拉屎,我其他时间都是在学习,拿着各类问题啃,背。经过一个月后,自我感觉学有所成了,于是就准备再去试试,然后面试的主要是 京东,360,车和家,小米,基本上京东和小米 360的一面过了,车和家的2面过了,我就想哈,准备的效果挺好的,然而,不幸还是发生了,京东,360,小米的二面全挂,车和家薪资达不到我的要求没有谈拢(要40K,只能给30K相差太远了)。后来系统的总结了一下,发现现在大厂面试已经不再像以前一样你可以通过背题来解决,以前如果背题你确实可以解决很多问题,因为技术不成熟,很多点你回答的似懂非懂的,人家也只有这个水平,尤其像我这种会扯的人。现在的面试是沿着一个技术点不断的往深里挖,越挖越深,直到你不懂为止,然后再根据你的回答的层级给你进行一个能力的层级的划分,给你打上一个标签,过或者不过。如果过了,我也了解到,三面就是针对项目的难点和发展方向的技术总监面,但是我并没有熬到这一层,所以,非常的难受...,所以决定打破自己背题的学习方式,全面的深入学习,我想这一定是我的知识体系的问题

6)学习的捷径

向我这样年纪比较大的人,说实话,自己的时间其实比什么都重要,毕竟30+的人了,什么东西都可以浪费,但是时间不能浪费了,我现在每天早上醒来后就睡不着了,为什么,因为脑子里面想到的都是工作一天不落实,全家都指望着我,房贷,车贷,刚生了小孩老婆没有上班,老妈也在身边帮忙照顾孩子,我一个人要养4个人。我越早一天上班,就早一天赚钱。到底什么是捷径呢?突然有一天在B站上面看到了一个视频,就是讲解Handler的,讲的非常好基本面试内容都包含了,地址大家可以参考一下:space.bilibili.com/474380680?f… 一个视频包含了面试的一个全面的知识点,深度有,宽度有,我认为这个就是捷键,确实想想吧,我以前所有的学习生涯来说,都是有老师带的,现在虽然工作了,技术方面其实也是需要有人带的,所以,我就跟着这个享学课堂学习了,老师确实技术都挺好的,真的是大厂开发出身的,技术问题他们都帮我解答了,报名后他们给我做了技术水平检测,同时做了一对一的学习规划和指导。现在正在全面的学习补充自己的技术漏洞,构建自己的知识体系,目前就职于腾讯 T3.1。

感谢大家的观看,希望对大家的学习有用,同时记录自己曾经痛苦挣扎的那些岁月。