我的中级Android跳槽面经:耗时1个月面试4家公司拿到3个offer,查漏补缺!

  • activity中应不应该有static变量

  • 事件分发

  • Handler

  • APP瘦身

  • 用户体验

  • service的两种启动方式和区别

  • bundle机制

  • Android 7.0特性

  • kotlin的看法

  • listview和recyclerview的区别

  • 数据销毁怎么保存

上述题是同一个面试官分了2次来问我的。说实话这家公司面试顺利的不行。面试官刚上来就问题目了。WTF?自我介绍呢?当时我还有点懵,不过也瞬间反应过来了,变跟着的他的问题去回答了。面试前后不到十分钟,他就说:我对你非常满意,薪资X如何?WTF?我当时还在想,这都发生了啥。不过我说对薪资不是很满意。然后他说要不在考考你?所以我在前面说了,这些题是同一个面试官分了2次来问我的。前前后后面试了差不多1个小时。最后给了个offer。

B公司(over)

这家公司是一个知名的教育平台,D轮融资,规模挺好,环境nice。

  • hashmap的原理

  • java 7 8 9 10的区别

  • lambda原理

  • 为什么java 7中不能用lambda

  • 三级缓存

  • setcontentview原理

  • gilde原理

  • string和stringbuilder哪个存储速度快

  • 事件分发

  • 线程

  • 如何学习的。

这家公司算的上我这几家面试公司中最想去的一个把,也是唯一一个被pass的一个。不过到头来,我是基本被秒杀了。看看上面的面试题可能也知道,难度系数还是有一点的。不过差不多能确定的是,面试官可能是java出生的。比如第一题,hashmap,问完原理之后,问了hashmap存储的是什么?hashmap内部是链表和数组,那么数组和链表是怎么存储和删除数据的。基本上,问的每一题到后面都会慢慢问到JVM的东西。JVM对于目前的我来说,简直就是噩梦啊…所以直接over了。

C公司(offer)

一家做新零售的上市公司。

一面

  • IO

  • 手写数组实现队列

  • 能不能动态add同一个布局

  • Handler机制

  • 手写rxjava遍历数组

  • scheme协议

  • 数组扩容

  • listview和recyclerview的区别

  • service

  • 线程如何做到安全

  • aop思想

  • 自由发挥

  • hashmap原理

二面

  • 五年的计划

  • 有木有考虑转岗比如ios

三面

  • 是什么让你坚持的写了三年的博客

  • 问了学历,谈了产品

这家公司也是面试的时间最久的一个,前前后后2个多小时,一面的内容我也有些不会的,不过问到java的内容的时候,那个面试官明说了,java我也不知道问啥,随便问问,然后主要的还是问了一些Android的内容。主要还是当场手写的,这种手写的么,知道多少就手写多少了。一面二面聊的东西也不是非常多,前前后后半小时。三面的话。上来就说,我刚才去看了你的github和博客,然后就问了,是如何坚持了三年的。我谈了我的一些看法,包括后面的学历和产品之类的,我分别的都说了我的看法。最后很神奇的听他说,要不你来我们公司做产品把。WTF?我当时都吃惊了。所以虽然技术面的一般,不过三面聊的很nice。最后也就拿到了offer。

D公司(offer)

一家C轮融资的公司,o2o平台。

  • hashmap原理

  • classloader原理

  • 线程安全

  • sparearray原理(拆分包)

  • gc机制

  • gilde原理

  • rxjava

  • Ui优化

  • 性能

  • 瘦身

  • 有木有看过框架源码,然后问原理

  • 单例模式

  • listview和recyclerview和Scrollview嵌套问题,以及rv和lv的区别

  • Android2个虚拟机的区别(一个5.0之前,一个5.0之后)

这家公司问的东西挺多的,遇到不会的面试官也和我说了是什么什么。主要这家公司是我早上面了C公司之后,做了1个多小时地铁去面试,感觉全程困的不行。所以回答还是比较一般。然后一面结束,二面面试官过来就说,刚才一面完了说技术开发没啥问题了,二面具体算是我对公司的一个了解。稍微问了一些东西。面完了最后就说,过会让hr发offer了。

谈谈非技术面试

上面的问题大多数还是技术面。我这边稍微说下非技术面,一般非技术面试考你是沟通能力,表达方式,情商等众多方面。不过一般都会环绕公司的发展方向,产品等问题进行讨论。所以,单单技术好还是差一点的。比如某些公司问道,从用户角度,谈谈我司的产品怎么样?所以在面试之前,最好下一下面试公司的app进行了解。如果没找到app也可以上公司官网进行了解。比如我这次面试的公司A,就没找到公司的APP,不过我去官网看了公司是干什么。

小结

面试完了之后,要学会总结自己到底哪方面不足,导致XX公司没有拿到公司,比如我,因为JVM和数据结构薄弱,导致没拿到B公司的offer。找到了自己的不足之后,我们就需要花时间对这方面进行弥补,不管是单纯的为了面试还是为了以后的技术沉淀。说白了,都是为了自己好。通过这次面试,我也知道自己哪方面的不足,为了以后考虑,所以我也会抽时间对这方面进行弥补。

最后我还整理了很多Android中高级的PDF技术文档。以及一些大厂面试真题解析文档。

image

Android高级架构师之路很漫长,一起共勉吧!
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
F技术文档。以及一些大厂面试真题解析文档。**

[外链图片转存中…(img-xAGhWfzQ-1715309929224)]

Android高级架构师之路很漫长,一起共勉吧!
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值