[Android] 记录人生第二次跳槽的面试经历

    在得到老板的允许之后,这两个周不停在折腾面试,并且基本得到了想要的结果,于上上周末正式离职,等待新的入职东家,不出意外的话应该是去爱奇艺。

    这次跳槽的主要诉求是去大厂,所以面试的公司基本都是一线互联网公司。过程还算顺利,至少比离开三星的跳槽让人舒服的多。整理了下面试问的内容,好多也记不太清楚了,有的问题被不同面试重复提问,就只整理一份。主要如下:

小年糕:
1.手写算法:从一个int数组中找出第一个不重复的数字。
2.Binder机制的原理。
3.手写算法:对一个先递增,后递减的数组进行排序。
4.如何实现一个ProgressBar在滑动过程中即使滑动区域偏离ProgressBar View的区域,依然能够滑动。

    这次跳槽第一家面试的公司。这一家是我前东家的竞品公司,几百人规模的创业公司,待遇也算不错,三餐加房补。所以当场谈妥,不日给了Offer。但是我面这里主要为了进入面试状态,而且公司规模并不符合我的诉求,所以最后当然是拒绝了。

爱奇艺:
1.ContentProvider实现的原理。
2.对同一个Service进行start和bind的混合操作,其生命周期执行的顺序。
3.Android进程间通信的方式。
4.Handler消息传递的原理。
5.Handler如何引起内存泄露,写出引用链。
6.手写快排。
7.touch事件的传递流程。
8.一个参数为基本类型的方法,传入的参数是引用还是指针?当参数为对象呢?
9.EventBus的实现原理。

    面完小年糕,当天下午就来面爱奇艺。说实话爱奇艺的面试并不算顺利,可以说是一波三折了。一面的面试官问技术知识,问了很多我不擅长的技术细节,导致一面前半程一度进入尴尬。好在后半程我的回答还是很不错的,所以大概是基于整体的考虑,一面让我通过了(PS:不得不说,爱奇艺工作人员的颜值真的是惊人。除了刚进门看到的几个漂亮小姐姐,一面面试官真的帅到我了)。二面是个组长一样的角色,主要问我之前公司做的东西还有一些技术实现,聊得还是很不错的,不过我还是优点沉浸在一面没有答好的阴影里,心里也一直觉得基本凉了。二面面完后,让我等了会,然后回来说他们的领导不在,让我先回去吧。我心里想,果然凉了。结果在回去的路上,就收到了爱奇艺HR的电话,说这两面通过了,定了周五的复面(当天是周三,周四是百度的面试)。我心里暗喜。结果周五爱奇艺的复面当头一棒。只跟三面的总监草草聊了十分钟大概,他就让我等下,回来的时候问我为什么跳槽如此频繁,原话说了句“你这个办不了”。我心想果然还是凉了啊,心里也就彻底放弃了。结果过了一周多,他们的HR跟我打电话又继续谈了起来(大概是找不到更好地人选了- -),心里这才觉得有谱了些。

百度:
1.Java class可见性的几种修饰。
2.Java内存模型JMM。
3.Handler消息传递的原理。
4.手写链表反转。
5.手写算法:从一个int数组中找到三个数字,相加等于给定的key,输出三个数字在数组中的位置。
6.如何实现一个Object可以通过该对象的value而不是地址来判定相等。
7.如何实现下拉刷新。
8.如何对一个播放器实现右滑隐藏进度条和播放按钮。
9.代理模式与装饰模式有什么区别。
10.git merge和rebase的区别。
11.实现两个线程,一个线程对公共int变量进行赋值操作,另一个线程在复制操作后运行指定代码块。
12.手写单例模式。

    百度是我这次跳槽所有面试的厂子里最想去的(毕竟BAT对我来说屎都是香的- -)。面试过程非常顺利。一面技术面答得很好,二面中规中距不过也不错,三面的总监主要聊了聊技术之外的,他也对我表现出了较大的意愿,所以我心里感觉非常靠谱。不曾想面完了就没声音了,至今杳无音讯。中途曾经电话询问,对方HR说在还在审核中。后来跟爱奇艺的HR谈的时候,他说百度的HC出了问题。或许是这个原因吧,我也不得而知。三面说了句玩笑话:“你一年多点,这已经再找第三家了。如果你第三家还是做了几个月就走了,大概没有公司敢要你了吧。”包括后来面试小米也提到了我频繁跳槽的问题。可见大公司对频繁跳槽确实是很忌讳的。

猎豹:
1.用户态和内核态的区别。
2.进程和线程的区别。

    先吐槽下猎豹真的够偏的,周围感觉甚至没有其他互联网公司。面了两面,一面面了快俩小时,基本的知识都涵盖到了,答得马马虎虎,感觉一面的面试官不是很喜欢我。二面来了技术总监,草草聊了十几二十分钟,他表示想招个在底层视频处理,进程通信上有深入研究的工程师,显然我不符合。

小米:
1.手写生产者消费者模型。
2.手写算法:一个字符串所有的字符是否全部存在于另一个字符串。
3.手写快排。
4.手写算法:遍历节点带有int值的树,找出所有节点相加等于给定值的路径的数目。
5.Retrofit的实现原理。
6.优化listview滑动。
7.HashMap的实现。
8.软引用和弱引用的区别。
9.引起内存泄漏的方式都有哪些。

    面的MIUI阅读部门。整体非常顺利,面了整整一下午的时间。几面面试官都很热情,三面技术面之后,来了个主管(穿着打扮很有时尚气质,看起来比较年轻,但是一看就是领导的样子),简单聊了几句,基本决定要了,转日HR联系,一周后发了Offer。如果爱奇艺没有通过的话,我应该会去小米。

    总的来说,感觉大厂Android岗位对我这样一年多开发经验的菜鸟要求还是很低的,大部分公司觉得只要你Java跟Android基础知识OK,知道一些原理机制,基本的数据结构算法没问题,就差不多可以了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值