前言

身边有个朋友,28岁,大概从十月份裸辞至今依旧没找到下一份工作,也变得越来越抑郁,觉得即将步入30岁的行列,却一事无成,不甘心从事一眼就能看到头的工作,大一点的公司自己又进不去。

经济、心理双重压力,越是不敢行动就越容易抓不住机会!总结来说就是:薪资与能力不匹配,畏惧工作心理作祟!

面试失败的原因

薪资与能力不匹配

大学刚毕业的时候,我就觉得我自己不会从事自己所学的专业。所以,在实习完,我就直接裸辞了!

但是,那个时候有种莫名的自信,就是我去做任何工作、任何岗位我都可以胜任,原以为,我可以在一个星期可以找到工作的我,花了近一个月都没有找到合适的工作。

不是没有公司要,而是觉得他们给的薪资太低,不想接受。事实证明,那个时候的我没有遭受过社会的毒打。

一个月后,带来的钱也快花没了,只能靠借钱过日子了,后来我想这也不是办法。就找到了我大学的辅导员,跟他说明了一下情况,他反问了我三个问题,告诉我这三个问题你想通了,你就能找到工作了!

  1. 你想做什么?
  2. 你会做什么?
  3. 你想做的跟你会的能力搭配吗?

你说你想做程序员,想拿1万的薪资,但你只会Ctrl+c、Ctrl+v,面试官又不是傻子!

所以,面试不通过请先思考上面三个问题,从自身内在问题出发。

你想做的岗位需要什么能力、晋升机制是怎么样的、薪资结构是怎么样的、平均薪资是怎么样的等等,这些都是需要你考虑到的。

畏惧工作心理作祟

什么叫“畏惧工作心理作祟”!简单来说,缺乏自信心和懒惰!

我没有工作那段时间,相当颓废,每天除了吃喝玩睡,整天啥事都不敢,脑袋空空的,但偶尔还会告诉自己不能这样了,再这样下去我就废了,但是只要拿起手机后,又把这件事抛到脑后了。

这种情况,间歇性踌躇满志,长期性混吃等死的状态越久,你就会发现,你越来越不想工作,就算你去面试成功了,你都会找一堆借口来拒绝公司,说服自己。

总之,你就是不想工作,但是对外宣传面试难、没有公司要我,来欺骗自己。

假如你是这种情况,有以下几点建议:

  1. 乘着自己空闲这段时间,别整天吃喝玩乐,无所事事了,好好想想自己未来的路(从工作、生活分别展开想想)。
  2. 多和朋友、家人谈谈心。这一点非常重要,因为你能不能重新站起来他们发挥着很大的作用,主要是心理上的。
  3. 多运动、多学习、多读书,无论你工不工作,这些都是对你有意义的。

面对面试失败的经历,我觉得大家也不用沮丧,而应该好好利用这段经历;也许在下一个面试就会有人问你「你印象最深的失败经历是什么呢?」,如果你能让 HR 眼前一亮,那么你就离成功不远了。

最后,建议把面试经历本身当成一种学习机会。

你焦虑,可能是因为你把这次面试机会当成一个重要的节点,但是放到你的整个人生旅程里,这只不过是一个小插曲,也许这次机会的错失,在酝酿下一个更适合你的机会。面试不一定一次就成功,但是你每一次面试,都是一次经验的积累,你需要具备结构性的思考,把面试的经验都放在你的认知框架里,为下一次面试做准备。

跳槽该做好哪些准备?

如果你决定好要跳槽了,那就要开始着手准备了。

1. 分析自己,找准定位

跳槽后找工作不能是盲目的,不是为了找工作而找工作。一旦决定跳槽就需要分析自己,要找准自己的定位,根据自己的能力和需求去判断自己适合什么样的工作,自己想要怎么样的工作。

2. 调整心态

每场面试复盘一下问题和回答,总结经验,了解自己表现的好和不足的方面,也方便自己后期选择公司,避免遗忘。

3. 简历准备充分

可以去知乎上面搜搜别人写的有关简历的帖子,怎么准备,突出自己的优点和能力,或者让朋友帮你看看简历有没有问题。尽量把你的亮点总结成一句简练的话,再加上数字来说明它的影响和意义。其次在简历里中加入了可交互、可展示的内容,更能显出你的能力与众不同。

4. 最重要的是心态

保持良好的心态,自信大方,这家错失了遗憾但不丧失信心和斗志,多和朋友沟通,工作很多,找满意的确实要花心思。先面试容易通过的,找到信心和感觉,重要的放后面。

面试题复习:Android中高级面试题

第一章 Java基础

  • 静态内部类和非静态内部类的比较
  • 多态的理解与应用
  • java方法的多态性理解
  • java中接口和继承的区别
  • 线程池的好处,详解,单例
  • 线程池的优点及其原理
  • 为什么不推荐通过Executors直接创建线程池
  • BlockingQueue及其实现
  • 深入理解ReentrantLock与Condition
  • Java多线程:线程间通信之Lock
  • Synchronized 关键字原理
  • ReentrantLock原理
  • HashMap中的Hash冲突解决和扩容机制
  • JVM常见面试题
  • JVM内存结构
  • 类加载机制/双亲委托

第二章 Android基础

(1)Activity知识点(必问)

  • Activity 启动过程全解析
  • Fragment 知识点
  • onSaveInstanceState 以及 onRestoreInstanceState 使用
  • 4onConfigurationChanged使用以及问题解决

(2)Fragment 知识点

  • Fragment 的通信问题, 新建 Fragment 为何不要在构造方法中传递参数
  • 为什么官方推荐 Fragment.setArguments(Bundlebundle)这种方式来传递参数,而不推荐通过构造方法直接来传递参数呢?
  • Androidx 下 Fragment 懒加载的新实现
  • Fragment全解析系列
  • Google-Fragment概览
  • Google-与其他Fragment通信

(3)Service 知识点

  • Handler知识点(必问)
  • Android主线程阻塞处理及优化
  • 深入聊聊Android消息机制中的消息队列的设计
  • 深入理解MessageQueue
  • 你真的懂Handler.postDelayed()的原理吗?
  • Handler.postDelayed()是如何精确延迟指定时间的
  • Handler延迟消息执行机制,会阻塞吗?

(4)Intent知识点

  • Android跨进程传递大内存数据
  • 数据存储

第三章 UI控件篇

(1)屏幕适配

  • Android屏幕适配和方案
  • Android 目前稳定高效的UI适配方案

(2)主要控件优化

  • RecyclerView优化

(3)事件分发与嵌套滚动

  • NestedScrollingParent & NestedScrollingChild
  • 动态化页面构建方案
  • 组件与布局

第四章 网络通信篇

网络协议

  • 彻底理解 WebSocket 原理,附完整的实战代码(包含前端和后端)

第五章 架构设计篇

  • MVP架构设计
  • 组件化架构

第六章 性能优化篇

  • 启动优化
  • 内存优化
  • 绘制优化
  • 安装包优化

第七章 源码流程篇

  • 开源库源码分析
  • Glide 源码分析
  • Glide 面试题
  • 聊一聊关于Glide在面试中的那些事
  • 简历上如果写Glide,请注意以下几点...
  • Glide OOM问题解决方法汇总
  • OkHttp源码分析
  • Okhttp连接池复用机制
  • Okhttp 流程和优化的实现
  • OkHttp的整个异步请求流
  • HttpEngine中的sendRequest方法详解
  • OkHttp解析大总结
  • Okhttp任务队列工作原理
  • Android 网络优化,使用 HTTPDNS优化 DNS,从原理到 OkHttp 集成
  • Retrofit源码分析
  • RxJava源码分析
  • RxJava原理与源码分析

第八章 新技术篇

  • 实战问题

第九章 面试题篇

(1)开源文档 (2)面试题合集

  • android事件分发机制,请详细说下整个流程
  • android view绘制机制和加载过程,请详细说下整个流程
  • android四大组件的加载过程,请详细介绍下
  • Activity的启动模式
  • A、B、C、D分别是四种Activity的启动模式,那么A->B->C->D->A->B->C->D分别- - 启动,最后的activity栈是怎么样的
  • Activity缓存方法
  • Service的生命周期,两种启动方法,有什么区别
  • 怎么保证service不被杀死
  • 静态的Broadcast 和动态的有什么区别
  • Intent可以传递哪些数据类型
  • Json有什么优劣势、解析的原理
  • 一个语言的编译过程
  • 动画有哪几类,各有什么特点
  • Handler、Looper消息队列模型,各部分的作用
  • 怎样退出终止App
  • Android IPC:Binder 原理
  • 理解Window和WindowManager
  • Bitmap的处理
  • 如何实现一个网络框架(参考Volley)
  • ClassLoader的基础知识
  • 插件化框架描述:dynamicLoadApk为例子
  • 热修复:Andfix为例子
  • 线程同步的问题,常用的线程同步
  • Asynctask和线程池,GC相关(怎么判断哪些内存该GC,GC算法)
  • 数据库性能优化:索引和事务
  • APK打包流程和其内容
  • 网络劫持的类型原理
  • 操作系统进程和线程的区别
  • ......

篇幅有限,以上 2022年Android中高级面试题汇总 已整理成PDF文档,需要的朋友可以*********