虽然疫情已经过去,餐饮、旅游一些实体经济迅速回暖,但是互联网的寒冬却还没有过去,很多大厂都在裁员,裁员比例还挺高,我们一千多人的公司就直接裁掉30%。
今年的各大公司基本只有两个目标:
一个是营收,那些投入产出比不高的项目或者事情都暂时搁置,可做可不做的就不做;
另外一个就是降本增效,通过多种手段,来降低研发的成本、减低项目交付的成本,提升工作的效率,最终其实也是实现营收。
导致现在公司招聘的岗位较少,但是应聘需要找工作的人很多,供需不平衡,造成了狼多肉少的情况,小公司的学历甚至都被卷到必须211,985了。
简历投递情况
我来统计一下我投递两周的简历情况,我主要用的找工作软件是Boss直聘和猎聘,主要统计如下:
投递信息统计:
基本上主动联系的很少,boss直聘不回信息占据87%,猎聘不回信息占据92%。
并且我还统计了一下主动联系和成功沟通的90%都是猎头和外包公司,本企业回复的寥寥无几(也可能我没有那么优秀)。
未读未回的说明应聘的岗位有可能已经不招了,只是空挂着;
已读未回,可能应聘的人太多,简历太多,看不过来,也可能看完之后觉得不匹配没有时间回复。
发送简历未回,那肯定是因为和招聘岗位不匹配。
面试情况
通过两周的投递,从刚开始的无人问津,到之后慢慢有了沟通,有了面试机会,在这过程我主要调整了两个方面,分享给大家。
1.简历准备
简历是最重要的敲门砖,是否和岗位匹配,是否能突出自己的优势,是否能让面试公司看完简历就觉得是个优秀的人才,有必须面试你的冲动,怎么更高的展示自己才是最重要的。
我就拿自己当做例子,给大家展示吧,可能和优秀的简历也有不小差距,欢迎大家指正,确实改完有了不错的效果。
首先给大家说一下简历的内容构成,主要有基础信息、自我评价、工作经历、项目经历、教育经历、技能证书6个模块组成,基础信息、教育经历、技能证书就不加赘述了,好学校和有相关证书在现阶段确实有不小的优势,简历太多的情况下,第一步先通过学历和证书筛掉一部分人。
第二就是工作经历和项目经历,这是简历中最重要的部分,是面试官重点关注和提问的地方。
其实我发现很多人写简历其实和我之前是一样的,都是简单罗列一下做了什么,有点像岗位描述。
面试官看到这样的简历,同行业的还行,了解你的相关产品和工作内容,如果不是同行业的,看工作经历项目经历,其实也是一脸懵逼。
面试过程中也不知道该怎么问你一些问题,该怎么和你沟通,这样面试的成功率肯定大大降低,严重的直接简历这关就被筛选掉了。
所以还是要向面试官展示自己最好的一面,如果自己的项目很多,只把自己觉得最熟悉、最能突出自己能力的产品或者项目放出来,然后将多余信息提出,进行整合。
最重要的是要放成绩,可以说一些产品中独特的设计和其带来的价值,B端或者G端可以说明一下营收情况,C端可以说一下总用户量、日活数量、用户活跃度、用户留存率等等。
这样才使得产品、项目经历更加真实、更加具象化,让面试官信服。
2.知识整理
最近面试的Android朋友都知道,以前公司招移动端程序员,主要看你做过哪些项目,会不会画 UI,能不能写界面和业务逻辑。但是现在面试除了问你项目经验,还会问底层和原理的问题,甚至会延伸到公司的业务和数据。
其实也不难理解,现在互联网大环境不好,公司想招的是能帮公司打硬仗的人,而不是还要别人带教的小白。
而我就是这样的一个人,之前一直是在做应用层开发,结果导致我面试中遇到底层原理,Framework方面的问题,就是一问三不知, 丢失了很多面试机会,之后也是梳理了一下我技术栈,尽力凸显自己底层相关的技术。
不仅是我,身边这样的反馈实在太多了,Framework又确实是面试和工作都绕不开的重难点,索性最近就花了半个月时间, 整理了一份可靠和系统全面的面试真题+知识点及学习路线+资料给大家,帮助大家吃透Framework底层源码。
接下来就是Fraemwork源码的思维脑图,其实就是让大家先预览一下Framework的知识点大纲,心里有个谱。
(重点:Binder+Handler+系统启动流程+AMS+WM+PKMS)
第一章 系统启动流程分析
- 第一节 Android启动概览
- 第二节 init.rc解析
- 第三节 Zygote
- 第四节 面试题
第二章 跨进程通信IPC解析
- 第一节 Sercice 还可以这么理解
- 第二节 Binder基础
- 第三节 Binder应用
- 第四节 AIDL应用(上)
- 第五节 AIDL应用(下)
- 第六节 Messenger原理及应用
- 第七节 服务端回调
- 第八节 获取服务(IBinder)
- 第九节 Binder面试题全解析
第三章 Handler源码解析
- 第一节 源码分析
- 第二节 难点问题
- 第三节Handler常问面试题
第四章 AMS 源码解析
- 第一节 引言
- 第二节 Android架构
- 第三节 通信方式
- 第四节 系统启动系列
- 第五节 AMS
- 第六节 AMS 面试题解析
第五章 WMS源码解析
- 第一节 WMS与activity启动流程
- 第二节 WMS绘制原理
- 第三节 WMS角色与实例化过程
- 第四节 WMS工作原理
- …
第六章 Surface源码解析
- 第一节 创建流程及软硬件绘制
- 第二节 双缓冲及SurfaceView解析
- 第三节 Android图形系统综述
- …
第七章 基于Android12.0的SurfaceFlinger源码解析
- 第一节 应用建立和SurfaceFlinger的沟通桥梁
- 第二节 SurfaceFlinger的启动和消息队列处理机制
- 第三节 SurfaceFlinger 之 VSync(上)
- 第四节 SurfaceFlinger之VSync(中)
- 第五节 SurfaceFlinger之VSync(下)
- …
第八章 PKMS源码解析
- 第一节 PKMS调用方式
- 第二节 PKMS启动过程分析
- 第三节 APK的扫描
- 第四节 APK的安装
- 第五节 PKMS之权限扫描
- 第六节 静默安装
- 第七节 requestPermissons源码流程解析
- 第八节 PKMS面试题
第九章 InputManagerService源码解析
- 第一节 Android Input输入事件处理流程(1)
- 第一节 Android Input输入事件处理流程(2)
- 第一节 Android Input输入事件处理流程(3)
第十章 DisplayManagerService源码解析
- 第一节 DisplayManagerService启动
- 第二节 DisplayAdapter和DisplayDevice的创建
- 第三节 DMS部分亮灭屏流程
- 第四节 亮度调节
- 第五节 Proximity Sensor灭屏原理
- 第六节 Logical Display和Physical Display配置的更新
结语
由于 Framework层代码量巨大,涉及到的逻辑线也非常多,经常容易看完后面的,忘记前面的,因此,要记得看完一部分及时总结。总结可以是一个流程图、一篇文章,或者任何你认为合适的方式,一来可以加深记忆,二来可以复习和会刊。