九月裸辞从长沙跑到上海,跑了一个月的面试,本月中旬终于拿到了爱奇艺的高级工程师offer。
做Android开发整4年有余,但是这一年才是最充实的,我花一年时间努力,送给了自己一个完美的蜕变!
我普通本科毕业,在长沙待了四年,其中只换过两家公司。去年这个时候,公司业绩不好要裁人。主管平时跟我关系比较好,说我本来也在被裁的考率名额中的,他帮我跟领导说了一堆好话才没事。我请主管吃了一顿火锅。
但是我无法像以前那么心安理得混日子了。因为我去年首付买了房。原本想着每个月稳定税后拿个8k的工资。挺满足的(8k在长沙算中高水平了)
想不到我要求这么低还差点被淘汰了??
开始面试,
(1)一来就问我tcp/udp有哪些协议(就记得http和dns解析,估计是看我专业是网络工程的)
(2)弱引用,软引用
(3)volatile关键字(突然不知道怎么回答,然后记起来了跟java内存模型相关,就说了一下jmm)
(4)多进程(莫名认为是多线程,说歪了)
(5)什么场景需要用到多进程(回答中说了推送)
(6)为什么推送需要多进程,有什么优势(不知道有什么优势)
(7)hashmap的数据结构(回答了维护一个entry数组,hash冲突,1.8中链表会变成红黑树,然后面试官没继续深究)
(8)anr分类有哪些,原因(具体不了解,就知道执行网络或者数据存储等耗时操作)
(9)anr定位(不会)
(10)activity生命周期
(11)activity从A打开B的生命周期(答错)
(12)事件分发
(13)使用过开发者选项吗(就用过显示过度绘制)
(14)kotlin相关,优点(简历上写了kotlin)
(15)kotlin协程(不会)
(16)mvp(回答不够发散,可以从mvc发散到mvp)
(17)算法题:链表有无环
面试官:大致情况了解了,我们会根据结果认真评级的,有通知人事会及时通知的,今天大概就聊到这里了。 我:心态已崩……
上述分享的程序员面试腾讯一面含泪把毒打经历,希望能让更多知识点薄弱的同学早点去补强。我们很多程序员都有一个大厂梦,但如何针对大厂进行面试准备,很多程序员就显得手足无措了。本文就根据自己一些见解谈谈如何准备面试。
关于笔者: 腾讯 Android 客户端开发工程狮一枚,喜欢技术、热爱开源。
之所以是细节杂谈,说实话,是因为真的不知道可以写什么,网上关于面试的文章很多,大概看了几篇之后,更不知道写什么了。而根据自己的面试经验来看,发现其实有很多细节,在面试的时候都没有被好好重视起来。所以,这里针对这些细节做个总结,也希望可以对你们有所帮助。
首先笔者理解的自我介绍的作用是缓解初次交谈的尴尬以及过渡开场,然后才是扩展为对候选人的口才、逻辑以及表达能力的判断。
如果你实在不知道怎么说,即便是把你简历上的姓名、年龄、爱好、工作经验复述一遍,至少也是起到了暖场的作用。当然要是能基于此,表现出一定出彩的地方,那自然是再好不过,多花点心思准备是值得的。
PS:最近看到一个有趣的分享,唐僧每次介绍自己:贫僧唐三藏,从东土大唐而来,去往西天拜佛取经。其实这几句话包涵了每人都要问自己的三个问题:我是谁?我从哪里来?我要到哪里去?
很大程度上,面试官还有一个身份就是以后可能要一起共事的同事或者老板,所以切忌不要表现的心高气傲,尤其在电话面试中,很难在短时间就能了解一个人,你所表现出的态度就显得非常重要,如果和面试官产生了争论,要注意谈话技巧,可以在你的观点前加上我理解的是什么什么…
就连牛顿说他不过是站到了巨人的肩膀上了,所以永远不要觉得自己有多牛,真正牛的人只会更谦虚。
嗯,标题起的挺押韵,容笔者小小的骄傲下
笔者在面试中,有时候和候选人聊了很久,觉得候选人基础知识扎实、项目经历也能娓娓道来,但是就是没有让人眼前一亮的东西,而且往往连续出现好几个类似的候选人之后,这种情况真的很难抉择,对于面试官来说,几个候选人表现的都差不多,你会发现…举个不太恰当的比喻,食之无味,弃之可惜。
所以,如果你有个大招就显得非常重要,让你和其他的候选人区别开来,而对于面试官来说,也会更偏向于你,甚至可以直接锁定胜局。
何谓大招,首先对于候选人来说,技术面试所涉及的深度和广度是很难全部顾及的,加之每个面试官的问题又会多种多样,所以与其担心被问到自己不熟悉的领域,不如挑几个自己的熟悉的技术点深挖下去,总结和形成自己的一套理论。
之前看到一句话说的很好,**面试的本质不是一问一答,而是亮点展示(放大招)。**所以要学会掌握面试的主动权,把话题尽量往自己擅长的地方引,当然陈述的时候记得一定要简洁扼要。
笔者当时在准备阿里面试的时候,就花了很多精力把 GitHub 一个优秀的开源框架,从设计模式、原理以及细节都琢磨了个透。
面试中问到算法题,如果不知道就明确表示不知道,切记不要装做知道,然后不知所云的说了一大推,这样反而会给面试官留下比较差的印象,面试评价上也会比较难看,很有可能也会影响你后续的面试。
不用担心回答不知道,就感觉没戏了。这里一般有两种情况:一种确实是对算法要求高的职位,那没办法了,只能回去好好加强一下,来日再战。还有一种情况主要是考察你的综合能力,你其他方面的能力表现的非常好,可以弥补。不会有影响的。嗯,笔者当时就属于第二种(强行炫耀)。
算法真的是笔者的一大弱项,之前每次面试被问到算法题的时候,我都很头疼,不过后来索性想明白了,把更多时间放在自己所擅长的地方了。
因为 GitHub 上的开源项目,笔者多次收到过 Facebook、Twitter、英伟达 (NVDIA) 的面试邀约邮件,尽管只是一封邮件,但是对于笔者来说,自身的能力得到认可还是很开心的。
所以,如果你的 GitHub 主页足够漂亮,带来的价值远超出你的想象,尤其是对于一无学历,二无大厂背景的同学来说,就显得更重要了,一定要利用好这个平台去展示自己的能力。
简历遵循 STAR 法则,内容才是王道。对于某些大厂来说,都会有自己的招聘系统,而你精心打造的酷炫简历在导入到后台后,会变得面目全非。你的简历样式做的再好看也没用,少在样式上下功夫,多在内容上下功夫。
听到面试官的问题后,先不要急于回答,给自己几秒的思考时间,多站在面试官的角度去思考这个问题应该怎么答,比如当问到你觉得你最大的优势是什么?有些同学会直接回答热爱技术……然后…然后就没有了。这样显然毫无说服力,如果加上一句,经常浏览国外优秀的技术博客、在 GitHub 参与和贡献自己的开源力量,是不是就好很多了。
**面试结束后,不要觉得不好意思,或者觉得没有必要,对面试官说一声:“谢谢,辛苦您了”。**就我个人经验来说,毕竟大部分负责的面试官都会和你聊比较长的时间,也会尽可能挖掘你的技术亮点。结尾给面试官留个好印象,如果没有通过,至少对你的面试评价上也不会太难看。
开发是需要一定的基础的,我是08年开始进入Android这行的,在这期间经历了Android的鼎盛时期,和所谓的Android”凉了“。中间当然也有着,不可说的心酸,看着身边朋友,同事一个个转前端,换行业,其实当时我的心也有过犹豫,但是我还是坚持下来了,这次的疫情就是一个好的机会,大浪淘沙,优胜劣汰。再等等,说不定下一个黄金浪潮就被你等到了。
这是我在这行工作10几年积累的一些资料,如果还想继续在这行业走下去的,或者现在打算跳槽,可以**私信【学习】**我愿意把资料免费分享给大家。
或者直接点击下面链接领取
Android学习PDF+架构视频+面试文档+源码笔记
转存中…(img-cWfOnrOd-1611544570996)]
[外链图片转存中…(img-dMX0Y29v-1611544570999)]