头秃了!一毕业就洒热血,35岁被抛弃,经验无用武之地,程序员的黄金时代靠的是什么?

头秃了!一毕业就洒热血,35岁被抛弃,经验无用武之地,程序员的黄金时代靠的是什么?_第1张图片

程序员的 35 岁魔咒

不知道从什么时候起,35 岁变成了一个很“残酷”的年龄。35 岁的中浪,稍不留神,就可能被前浪和后浪拍打在沙滩上,连浪花都不剩。

中年危机已是一个普遍的社会问题。但对程序员这个群体来说,35 岁的危机感似乎格外重一些。

“因为程序员的工资普遍高于其他行业,一旦这个行业不要你了,(薪资)可能会面临断崖式下跌,所以才会有危机”,资深程序员赵可(化名)说。

35 岁是一道界限分明的职场分水岭,最尴尬莫过于“高不成、低不就”。如果到了 35、40 岁还没晋升上管理层去,就会面临失业、被社会淘汰的风险。一位 35+ 程序员在求职网站自述,他在今年年初被裁后的 2 个月里,疯狂海投简历、面试,只拿到了 6 个非大厂 offer,最终他决定平薪入职其中一家。

打击面并不仅限于职场。在某社交平台上,一位程序员愤愤表示,新认识的交友对象对“程序员到了 35 岁就退休”的定律感到介意,以致于感情快告吹了。

越临近 35 岁,焦虑感越发强烈起来。打开不少社交平台的相关话题页,你很容易被各种忧心忡忡的情绪所感染,35+ 程序员懊恼失业,就连 20+ 的年轻人也开始担忧未来会失业...

35 岁不转管理“混吃等死”?

35 岁以上的程序员都去哪了?经常有人发出这样的灵魂拷问。很多人会选择在 35 岁的当口转型以渡过中年危机。

一般来说,35+ 程序员的职业路径主要有三个大方向:技术专家、技术管理、跨行业就业(非技术向)。

转做技术管理,大多数程序员都会走上这条路。

另一方面,技术做久了,升到管理层,也是正常的职场晋升流程。

但需要注意的是,并非所有程序员都适合做管理。

从技术到技术管理,要跨过的“坎”不少。

“35 岁不转管理就‘混吃等死’”,很多程序员觉得到了 35 岁、40 岁,再不转管理就来不及了。

现实情况下,技术管理岗位相比普通程序员岗位要少得多,所有人都去做高管显然不切实际,市场空间小且需要在技术和管理能力上具有相当的竞争力。

在这种背景下,程序员到了 35+ 还在一线写代码的人一定大有人在。实际上,如果热爱技术工作,就算到了 35 岁不转管理,坚守在一线岗位也未必就发展不好。

到底要不要转型,当你做决定的时候,可以先思考下这两个问题,一是想转到什么岗位及评估自己是否具备该岗位所需的技能;第二,是否热爱这个行业,并愿意始终在这个行业学习。

头秃了!一毕业就洒热血,35岁被抛弃,经验无用武之地,程序员的黄金时代靠的是什么?_第2张图片

互联网不需要中年人

回过头来反思一下,为什么 35 岁成了程序员的职场终点?
表面上看,这是个人的职场发展遇到了困境。更深层次的原因与当前激烈的就业环境不无关联,这里面很大程度上是市场“倒逼”的结果。

华为劝退 35 岁员工,强制退休补偿 45 岁员工;腾讯裁撤 10% 高管,劝退 35+ 员工... 如今的快速迭代的互联网和职场环境,都在向中年人传递出一个信号 —“你老了”。正如马化腾所说,或许你什么错都没有,就错在太老了。

“不要 35 岁以上的中年人,再便宜也不要”。虽没有明文,但 35 岁定律已是国内科技互联网公司招聘标准里的“潜规则”。

年轻人能修 996 福报,对薪资要求不高,中年人精力和体力双下滑,家庭负担拖累成长空间,对薪资要求还高。于是“橄榄枝”更多伸向了年轻人。

到了 35+ 的年龄再去找工作,市场的期待值也会变高。

我以前在招人时发现,其实市场上很缺人,但又有很多大学生找不到工作。这并不矛盾。“很多程序员的简历上写着做过很多项目,但真聊起来发现他做的并不深入。行业真正需要的是经验丰富、能实际解决问题的人才”。

从另一个角度看,市场的“优胜劣汰"机制,也并非全都是坏事。它能鞭策程序员不断提高自己,形成自己的竞争优势。

如何打破 35 岁定律

35 岁定律就像一把高悬在头顶的达摩克利斯之剑,悬而不落的状态最“折磨”人。但时间永在流逝,没有人能避免 35 岁的来临。

如果一个程序员随着年龄的成长,每天还只是在重复做着基础工作,那么当 35 岁来临时,危机大概率也会找上门。

对抗 35 岁危机,不能打无准备的“仗”。最关键的是,一定要对自己有清晰的人生定位,“你在 35 岁之前最好想明白,任何行业、任何岗位,都能创造奇迹”,陶建辉建议。

如果真的热爱技术,希望在技术领域长期发展下去,就要持续学习,以让自己在技术上有积累,有系统化的理解和认知。如果有志向转型管理,那也要做相应的准备,注意培养自己的管理思维。而对于那些觉得干这行不是特别突出,竞争力相对较弱的普通程序员来说,提早准备 Plan B ,探索第二职业,谋求合适的时机转型 ,也不失为明智之举。

总之,无论是继续坚守技术道路还是转型,遵从自己的内心和志趣是最重要的,也都少不了持续学习,方能打破 35 岁悖论。商业世界瞬息万变,必须紧跟脚步才能不被时代抛弃。

克服 35 岁现象,除了个人努力突破职业瓶颈外,还需要良好的舆论环境,不要“妖魔化”35 岁。

更重要的是,职场生态需要进一步改善,希望企业为大龄技术人营造更加公平良性的就业机会和就业环境,给予大龄程序员更加包容、开放的空间。

程序员需要终身学习

IT行业,是一个新技术层出不穷的行业,每一年都会诞生许多新的语言,新的框架,新的开发理念。20来岁,是学习新事物的黄金年龄,35岁的程序员,在学习新技术上,很可能比不上年轻的后辈们。

程序员行业新技术发展迅猛,可以说是日新月异。

也正是这个原因,中年危机成为我们必须面对和攻克的问题。

思考一个问题:那些能工作到45、50、甚至60的程序员们,究竟具备了哪些过人的能力?

就我过去的经历和观察来说,我认为:他们掌握了一些硬核技能

这些硬核技能帮助他们克服了年龄带来的劣势。

那么对于Android开发者来说需要掌握哪些核心技能呢?

先看看下面这个技能图自己都掌握了多少,要全部掌握的话又该怎么学呢?

头秃了!一毕业就洒热血,35岁被抛弃,经验无用武之地,程序员的黄金时代靠的是什么?_第3张图片

下面则是上面技能图对标的详细学习资源文档:

所以,如果你平时只知道埋头苦干,或过于死磕某个实现细节,没有抬头审视过这些技术,那么在准备面试之前,很有必要好好梳理一下 Android 知识体系,这样才能拿下满意的 Offer。

1.Java语言进阶

深入学习Java语言,全面掌握Java面向对象思想,掌握热修复与JVM原理。

  • 泛型与注解在Retrofit中的应用
  • 多线程与Java File IO操作应用实战
  • RxJava原理分析
  • JVM与内存泄漏原理解析
  • ClassLoader与 反射在Hook中应用
  • 动态代理机制在源码中的应用

2.高级UI与FrameWork

学握Android UI特性与版本适配,全面了解自定义UI,深入理解Android系统内核原理技术。

  • Ul绘制原理
  • 动画原理
  • 事件响应机制
  • 屏幕适配
  • FrameWork源码解析
  • 相机适配

3.360°性能优化

时间和空间的复杂度来写出优雅的高效代码实战,解决用户使用App过程中的卡顿与保活技术,学握加固/奔溃/卡顿/启动过程的问题。

  • 从事件
  • 从内存
  • 卡顿调优
  • App保活
  • 内存优化
  • 高性能编程实战
  • OOM原理解析与项目实战

4.NDK开发专题

精通C/C++/JNI基础,全面掌握图形图像处理,音视频处理,人工智能应用等技术。

  • C/C+基础
  • JNI编程基础
  • 图像处理与热修复应用
  • 音视频开发
  • OpenCV人工智能
  • OpenGL 图像绘制

5.前沿技术专题

从热修复/热更新到组件化/插件化,在深入理解Rxjava,手写图片和网络框架。全面精通Google Android jetpack实时更新技术,应用Kotlin进行项目实操。

  • 热修复/热更新
  • 组件化/插件化
  • RxJava深入研究
  • 图片与网络架构
  • Google I/0大会技术
  • Kotlin项目实操

6.微信小程序

掌握小程序从无到有的构建过程,能够将app开发的能力复制到小程序中,并进行项目实战。

  • 小程序架构介绍
  • UI界面开发
  • 高级API实操
  • 微信对接实战
  • 任务清单项目实战
  • 电影榜单项目实战

7.Flutter Hybrid开发

学习Dart基础和高级语法,掌握控件/布局/动画/操作手势/线程/网络以及交互等核心技术。

  • Dart语法
  • Flutter线程运行模型
  • Flutter与Native通信架构
  • Flutter内存调优
  • Flutter项目实战

除了上面的学习路线,还可以额外的配合以下方式学习,效果翻倍~

①看视频进行系统学习

前几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。

另外,我自己也珍藏了好几套视频,有需要的我也可以分享给你。

②读源码,看实战笔记,学习大神思路

“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。

主要内含微信 MMKV 源码、AsyncTask 源码、Volley 源码、Retrofit源码、OkHttp 源码等等。

③面试前夕,刷题冲刺

面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。

关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:

以上内容均免费分享给大家,需要完整版的朋友,点这里可以看到全部内容。或者点击 【这里】 查看获取方式。

你可能感兴趣的:(程序人生,Android,程序员,Android,程序员,年龄危机,移动开发,技能提升)