前言
互联网圈子里,大家都认为程序员“35岁一道坎”的公论,具体说的是:做互联网技术的,一旦年龄来到35岁,意味着他已经写了十年代码了。三十五岁的程序员大都已婚,有小孩和老人要照顾,不能适应996,拿着高工资,身心的抗压能力也大不如前。如果不能转到公司的管理岗位,还在基层默默地写程序,改bug,那么离被离职就不远了。面对这一现状,作为程序员的我们,该怎么做呢?
1.继续做一名程序员
我想国内很多人说程序员只能干到35岁,主要是因为35岁之后的社会招聘的程序员岗位比较少。试想一下你们公司如果需要招聘程序员,很少会选择40岁的程序员吧。但是其实编程就像登山一样,越往上爬,人越少。
很多人都在某个年龄段之后对编程失去了激情,每天敲击的都是重复的代码,那么其实也就逐步筛出了一些大龄普通程序员。
编程绝对不能是青春饭,技术绝对是硬通货。编程是一门艺术,程序员也是手艺人,30岁之后才能算的上一个合格的程序员吧,最起码才刚刚入门。
2.技术管理兼职架构师
架构师是程序员的技术达到一定的水平之后可以考虑的一个方向。
架构师需要有全局观,洞察力和想象力。需要对业务和技术都有着深入的了解,是要对某个行业有一定的深刻认识。 需要处理更加复杂的问题,负责设计和规划整个系统的架构,确保系统的稳定性、可扩展性和性能。一般公司架构师都是技术管理人员,作为管理人员的话,稍微需要有一点情商,懂一点管理,可以将合适的人安排到合适的位置。
3. 人到中年,迫不得已
所以说,当程序员的三十五岁中年危机来临的时候。我们在适当焦虑的同时,必须要提高自己的技术和竞争力,学习新的编程语言和技术。深入了解软件架构和设计模式,学习如何设计出高效、可扩展、可维护的软件系统,这样可以提升自己的技术水平,成为一名更加高级的程序员。
作为同龄人,也有同样的中年危机,我为大家整理了一份提升自己技术的资料,希望能够更好的帮助大家跨过三十五岁这道坎。有需要的朋友可以扫码免费领取。
第一章 系统启动流程分析
a) Android启动概括
b) init.rc解析
c) Zygote
d) 面试题
第二章 跨进程通信IPC解析
a) Sercice 还可以这么理解
b) Binder基础
c) Binder应用
d) AIDL应用(上)
e) AIDL应用(下)
f) Messenger原理及应用
g) 服务端回调
h) 获取服务(IBinder)
i) Binder面试题全解析
第三章 Handler源码解析
a) 源码分析
b) 难点问题
c) Handler常问面试题
第四章 AMS源码解析
a) 引言
b) Android架构
c) 通信方式
d) 系统启动系列
e) AMS
f) AMS 面试题解析
第五章 WMS源码解析
a) WMS与activity启动流程
b) WMS绘制原理
c) WMS角色与实例化过程
d) WMS工作原理
第六章 Surface源码解析
a) 创建流程及软硬件绘制
b) 双缓冲及SurfaceView解析
c) Android图形系统综述
第七章 基于Android12.0的SurfaceFlinger源码解析
a) 应用建立和SurfaceFlinger的沟通桥梁
b) SurfaceFlinger的启动和消息队列处理机制
c) SurfaceFlinger 之 VSync(上)
d) SurfaceFlinger之VSync(中)
e) SurfaceFlinger之VSync(下)
第八章 PKMS源码解析
a) PKMS调用方式
b) PKMS启动过程分析
c) APK的扫描
d) APK的安装
e) PKMS之权限扫描
f) PKMS之权限扫描
g) 静默安装
h) requestPermissions源码流程解析
i) PKMS面试题
第九章 InputManagerService源码解析
a) Android Input输入事件处理流程(1)
b) Android Input输入事件处理流程(2)
c) Android Input输入事件处理流程(3)
第十章 DisplayManagerService源码解析
a) DisplayManagerService启动
b) DisplayAdapter和DisplayDevice的创建
c) DMS部分亮灭屏流程
d) 亮度调节
e) Proximity Sensor灭屏原理
f) Logical Display和Physical Display配置的更新
整份文档一共有几十万字,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!