35岁的开发莫慌张!学会这些东西,35 岁以后也依然被公司抢着要!
Posted BUGgogogo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了35岁的开发莫慌张!学会这些东西,35 岁以后也依然被公司抢着要!相关的知识,希望对你有一定的参考价值。
知乎的热榜上有过这样一个问题:“什么样的程序员在 35 岁以后依然被公司抢着要?”35 岁这个关键字备受瞩目,似乎是所有职场人都不容易迈过去的一道坎。
35岁的职场人也是左右为难:
一方面,各大公司一到大规模裁员,35 岁以上的普通员工,就成了重点“关照”对象。另一方面,大多数公司在招聘中把年龄限制在 35 岁以下,35 岁左右的人,连面试资格都没有。就连“铁饭碗”也不能幸免:公务员,考试年龄都限制在 35 周岁以下。
但是“铁饭碗”好就好在只要进去了就差不多稳了,这也是为什么国内大家无比向往体制内工作的原因——至少不用担心半路被扫地出门。而35岁这道坎在程序员这个行业比较明显:很多程序员将 35 岁看作职业生涯的一个重要转折点,认为干到 35 岁之后就不行了,不少人觉得这是个吃青春饭的行业。
其实关于“35岁的出路在哪里”这个问题在知乎这个问题下面有一条高赞回答:成为架构师。开发架构师在人才市场一直都是紧缺的状态,而且对于年龄没有那么搞的要求,
成为架构师也几乎是所有程序员的终极梦想,但是,可以说90%以上码农肝了几年、甚至十几年,头发都快熬没了还是做不了架构师。
大部分程序员都是从小公司、小团队做起。特别是非科班出身的程序员,除非技术过硬,不然很难进到大公司或BAT之类的大厂。小团队一般 10个 人左右,其中常常是技术最好的做架构师(或CTO)。所以,架构师在广大码农中的占比平均不到 10%。
而架构师也可以分为初级、中级、高级,江湖上真正高水平的软件架构师就更少了。
35岁就注定被优化?
其实大厂裁员并不是35岁以上都一刀切,他们裁的绝大多数都是工作十来年,考评、职级、收入、股票都偏低的一群人。这部分人的工作一般都是底层搬砖的“体力劳动”,或者是“德不配位”能力达不到薪资标准的员工,他们的工作具有可替代性,除了只是一个“熟练工”并没有其他的突出价值。
这些人一般都有以下三个特点:
- 薪资相当于两三个应届生,但是能力最多顶一个;
- 老油条,搞事情一般般,但是油油的;
- 不会做人,只会写代码,职业能力和情商都一般般;
总的来讲,就是性价比低、可替代性强的员工。与此相反的是各个公司都还在高薪诚聘的“架构师”。
怎样才能成为一名架构师?
成为架构师并不是一件一蹴而就的事情,这个不只需要有好的职业素养业务能力还需要好的工作习惯,这些都需要在日常工作中慢慢养成。
(一)好的工作习惯
1.负责任
负责任是说给你指派的任务,你要保质保量认真按时完成,这是最基本要求。
在你做的过程中,你要考虑有没有什么风险?对别人有没有影响?能不能把公用部分抽出来造个轮子?如果是作为别人的上游,对别人来说是不是好用?代码是不是简洁干净?有没有可以写成配置的 hardcode?
2.会表达,会沟通
沟通能力不是不是说找产品找经理吵架的能力。沟通能力有三层意思:
第一,表述有条理,有逻辑
讲述一件事情或者描述一个物体要有条理,有逻辑,能用清楚明白的语言把要描述的对象描述出来。
在这个过程中很多技术人员习惯用技术语言去跟其他领域的人沟通,暂且不谈语言条理和逻辑,这种沟通大多是无效的,因为鸡同鸭讲怎么可能有效率?所以引出第二条:要学会抽象和归纳。
第二,表达有抽象和归纳
在跟人沟通过程中,讲一件事不要东一榔头西一棒槌,一会描述细节,一会又概括描述。
特别是技术人员在跟其他人沟通时,要把技术概念抽象出来,并且概括提炼你要说的内容,然后组织语言表达出来,这样让对方快速理解你要表达的东西,如果涉及到细节,你再深入那个点展开来谈。
第三,保持和上级的即时沟通状态
这一点特别是那种需要相对长期时间完成的任务,尽量在一些关键的点汇报自己的情况,让对方知道自己在做什么,做到哪里,还有什么剩下的,有什么问题,有什么风险,需要什么帮助等等。
千万不要闷头在那做,啥也不说,事到临头领导一问,这也是问题那也是问题,明明工作中有很多问题需要解决就是不尽早沟通,一直拖,拖到最后干不下去了直接给上级一个“惊喜”。
(二)好的职业素养
1.写好业务代码,搬好每一块砖头
没有哪一个架构师不是从写业务代码成长过来的。上面指派的任务,要保质保量认真按时完成,这是最基本要求。
在这个的基础上考虑有没有什么风险,对别人有没有影响,能不能把公用部分抽出来造个轮子?如果是作为别人的上游,对别人来说是不是好用?代码是不是简洁干净?有没有可以写成配置的 hardcode?
一个好的工程师在拿到需求时,并不单纯是考虑这个需求怎么实现,还会考虑,自己设计的架构体系,扩展性在哪里,在他的眼里,看到的需求会被分解,折分,然后自己的技术方案,会挨个分解,分配。
在完成设计之后,他会很清楚的知道 ,自己设计的系统里,哪些变化是支持的,随便你改,我只需要改动一个很简单的内容,哪些是你绝对不能改的,你要改,我就必须花很大的代价,特别是在已经有线上数据的时候。
而且还要会拿着自己的架构体系跟 PM 沟通,讲清楚。
负责任,写好业务代码,搬好每一块砖头,完成自己的代码质量优化。当你做到了这些你就拥有了基本的架构思想:面向未来编程。
2.底层基础知识过硬,专业技术过硬
每个企业的业务方向都不一样,用的技术也不一样。很多人在开发过程中只是浮在表面,忽略底层源码分析,面试求职的简历也没有进行修缮和突出重点,自然求职不顺,加薪无望。
解决这个问题的最好办法就是:深入底层,抓住不变量。
要知道,底层知识永远都不过时。算法数据结构、基本的程序设计理论、良好的编码习惯、分析问题和解决问题的能力、强大的学习能力和旺盛的求知欲……这些永远都不过时,大脑的思维方式也永远都不过时。
专业技术过硬 ≠ 对API熟悉,技术过硬是指对技术在实际业务模型下的应用能力,自己在实际工作中对问题的分析解决能力。
有时候在做一个功能或者解决一个问题的时候,你有很多种选择,有很多方法,你是否有足够的知识储备让你选择解决方案,找到最优解?还是你仅仅知道一个唯一的解决方案?
当你面对一个问题的时候,你的思路是否能支持你一步一步找到 root cause?要花多少时间?找到以后你能不能有办法解决掉?
如果你觉得自己在这些方面还有欠缺,这里推荐大家去看一下这份源码解析PDF。
从底层开始打怪升级。
这份资料免费分享给大家,有需要的朋友可以【点击此处】直接免费获取。
3.保持学习的习惯
很多人认为年纪大了学不过年轻人,但是这个逻辑是讲不通的。年纪大了家里事情多,没年轻人有时间那我还是能理解,但是也拥有年轻人没有的优势,比如对代码的熟稔,对规则的熟悉。
笔者大概每天保持学习 2 小时以上,主要是对新技术的学习和刷算法题。手游、短视频什么的基本不碰,碎片时间会刷刷CSDN、知乎。
笔者自己明显感觉到最近这些年,精力,智力,思维,工作能力相比于读书考试那会以来又达到了一个巅峰状态,工作上代码写的得心应手,学习东西快,理解能力强,刷算法时思维比以前还要敏捷。
不敢说公司抢着要把,但是至少笔者能说自己还是有一定竞争力,起码 35 岁被裁什么的在我这不存在的。就算是被裁,出去重新找个工作也很容易,还能涨涨薪水。
总结
要想成为架构师,那就不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划也很重要,学习的习惯很重要,但是最重要的还是要能持之以恒,任何不能坚持落实的计划都是空谈。
最后,如果身边没有好的架构师引导、培养。所处的圈子氛围不好,要想成长也很难。大家可以加入文中我们的技术交流圈,一起探讨移动开发的技术,共同成长。
最后
这里给大家分享一套由阿里高级架构师编写的《android开发系统核心知识笔记》,帮大家将杂乱、零散、碎片化的知识进行体系化的整理,让大家系统而高效地掌握Android开发的各个知识点。
笔记整理目录
(一)架构师必备Java基础
(二)设计思想解读开源框架
(三)360°全方位性能优化
(四)Android框架体系架构
(五)NDK模块开发
(六)Flutter学习进阶
(七)微信小程序开发
(八)kotlin从入门到精通
这份资料免费分享给大家,有需要的朋友可以【点击此处】直接免费获取。
以上是关于35岁的开发莫慌张!学会这些东西,35 岁以后也依然被公司抢着要!的主要内容,如果未能解决你的问题,请参考以下文章
一个40岁中年程序员的感言:一定要学好这些东西,35 岁以后也依然被公司抢着要!
什么样的测试员在35岁以后依然被公司抢着要?打破测试员“中年危机”
知乎万赞:什么样的程序员在35岁以后依然被公司抢着要?打破程序员“中年危机”