都说编程开发行业跳槽越多涨薪越快,这也导致一些开发者希望通过跳槽来提高自己的薪资,这个方法在几年前或许还行,但是到了现在这个方法已经行不通了。
互联网开发行业是一个发展迅速的行业,到了现在整个行业已经进入了一个饱和的状态,从事互联网开发的人太多了,特别是Android开发,不像刚起步的时候,只要你懂一些技术就可以找一份好的工作,所以说现在想靠跳槽来提高自己薪资是几乎不可能实现的。
今天就分享一下我的一位有着近十年Android开发经验的朋友,跳槽后的面试经历,看他经历了多少才拿到自己心仪的offer。
基本情况
我这位朋友有着近十年的Android开发经验,主要从事性能优化这一块,在上一家公司待了三年,对自己的薪资不满意,觉得薪资跟自己的能力不匹配,于是就辞职了。
按理说他有着近十年的Android开发经验和职场经验,找工作对他来说应该不是什么很困难的事情,可是偏偏事与愿违,他连续面了十几家公司都没有过,要不就是自己没看上的,找朋友内推过大厂,结果简历直接拒了,自己投了几个大厂,也都是石沉大海。
最后他静下心来总结了面试的问题,他分析几个面试不过的关键点:
-
基础知识点不牢固
-
对新的技术不是很了解
-
对自己的职业规划不是很明确
于是他花了一个多月的时间去巩固以前用过的知识,学习了解新技术,明确自己的职业规划,最后通过一过多月的时间拿到了自己心仪的offer
下面是他跳槽后的面试经历:
公司一:
-
dp是什么,sp呢,有什么区别
-
自定义View,ViewGroup注意哪些回调?
-
界面卡顿的原因以及解决方法
-
android中的存储类型
-
service用过么,基本调用方法
-
Handler机制
-
LinearLayout、FrameLayout、RelativeLayout性能对比,为什么
-
Activity的生命周期,finish调用后其他生命周期还会走么?
-
FW层熟悉么,源码看过么
公司二:
-
GC回收机制熟悉么,分代算法知道么
-
Java的类类加载原理
-
内存泄漏如何排查,MAT分析方法以及原理,各种泄漏的原因是什么比如
-
Handler为什么会泄漏
-
gradle熟悉么,自动打包知道么
-
介绍下先的app架构和通信
-
自己负责过哪些模块,跟同事相比自己的优势是什么
-
遇到过什么印象深刻的问题,怎么解决的
公司三:
-
Canvas的底层机制,绘制框架,硬件加速是什么原理,canvas lock的缓冲区是怎么回事
-
surfaceview, suface,surfacetexure等相关的,以及底层原理
-
android文件存储,各版本存储位置的权限控制的演进,外部存储,内部存储
-
上层业务activity和fragment的遇到什么坑??页面展示上的一些坑和优化经验
-
网络请求的开源框架:OKHttp介绍,写过拦截器么
-
微信跳一跳外挂怎么实现,检测怎么做的?
-
一张纯色背景下怎么有效检测各个矩形?
-
对接的so算法了解么,有接触过相关的库么?
-
三个算法题选一个并写出测试用例:打印n-m之间所有的素数;计算n-m之间1出现的次数;指定数字序列的排序;
-
android api层的源码熟悉哪些?解释一下
公司四:
-
进程间通信方式?Binder的构成有几部分?
-
HttpClient和HttpConnection的区别
-
View的事件传递机制
-
MVC,MVP,MVVM分别是什么?
-
Android中常用的设计模式,哪三个比较高级的?
-
内存优化,OOM的原因和排查方法
-
想改变listview的高度,怎么做
-
Https是怎么回事?
-
除了日常开发,其他有做过什么工作?比如持续化集成,自动化测试等等
公司五:
-
ActivityA跳转ActivityB然后B按back返回A,各自的生命周期顺序,A与B均不透明。
-
Synchronize关键字后面跟类或者对象有什么不同。
-
单例的DCL方式下,那个单例的私有变量要不要加volatile关键字,这个关键字有什么用
-
JVM的引用树,什么变量能作为GCRoot?GC垃圾回收的几种方法
-
ThreadLocal是什么?Looper中的消息死循环为什么没有ANR?
-
Android中main方法入口在哪里
-
jdk1.5?SparseArray和ArrayMap各自的数据结构,前者的查找是怎么
-
实现的,与HashMap的区别
-
Runnable与Callable、Future、FutureTask的区别,AsyncTask用到哪个?AsyncTask是顺序执行么,for循环中执行200次new AsyncTask并execute,会有异常吗
-
IntentService生命周期是怎样的,使用场合等
几点建议总结
在决定跳槽辞职前,一定要去巩固一下基础知识点,了解新的技术(因为Android开发发展迅速,隔一段时间就会有新的技术)提前为面试做准备。
找工作的时候要先面试一些小公司,了解一些面试的情况和行情。
要明确目标做好自己的职业规划(这一点在HR面时发出重要)
要保持好的心态放低姿态(不要以为自己经验丰富,就很牛)
最后
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。 下面我分享一下我整理的一些腾讯、头条、阿里、美团、字节跳动等公司2019-2020年的高频面试题,我把这些技术点整理成了视频和PDF,由于篇幅有限,有需要的朋友可以简信我【资料】或者点下面石墨文档免费领取
《Android学习PDF+架构视频+最新面试文档+源码笔记》
或者点下面石墨文档免费领取**
《Android学习PDF+架构视频+最新面试文档+源码笔记》
[外链图片转存中…(img-RYhsgaBX-1622703189210)]