程序员在35岁以后,是继续做技术,还是该转向管理?如果选择前者,那么该如何和年轻人竞争呢?
最近一年,一直在思考这个问题。当35岁后:
优势:
- 学习适应能力比年轻人强很多, 学习新语言,新技术速度是年轻人的3-5倍
- 有一定的行业经验,管理经验,具有设计经验
劣势:
- 体力差, 家庭压力大, 无法高强度加班
- 工资要求高
如何竞争?
- 最好的肯定是把握社会发展,做出一流企业,能做得这一步的算行业精英了。这类人也无所谓找工作了。
- 第二个选择是做管理, 这方面就需要提高情商了。也看机缘,能遇到一个赏识自己的老板,把握行业技术方向, 做好企业管理,就是最大成功。
- 最后一个选择就是继续做技术。
前面2个基本要看机遇,是个人能力,家族实力的完美体现。大部分人来说是可遇不可求。作为普通的开发人员,最后一个选择是常规选择。
下面,结合个人体会,探讨如何继续做技术。
凡事预则立,技术上来说,也分硬实力和软实力。
硬实力
硬实力是什么?就开发来说,就是通用技术 行业技术
通用技术
就我的观点来说,通用技术就是下面的这些基础技术:
- 电子电路
- 编程语言
- 软件系统(编译原理与操作系统)
- 硬件系统(硬件体系架构等)
作为以开发为终身职业的,建议花2年的时间,打好上面基础。有这些基础,中国的任何IT公司,任何开发岗位都能干。
学习方面也很简单,直接看MIT的公开课,达到MIT 毕业生 60分要求就是很高要求了。
行业技术
这个就难说了,行业发展很快,基本2-3年就大不同,建议每半年总结下。不断寻找自己擅长并感兴趣的方向。
坦率来说,这个与钱途关系太大了。不同行业,收入差别可能就是几十倍。
软实力
软实力第一要求就是语言,语言包过外语和国语。
外语这个也是看机遇了,建议能去美国、新加坡、欧洲、日本等国家的,都抓住机会去看看,待1-2年对自己的发展很有帮助。最低也能让你思维跳出本国模式,感受下他国文化。
国语,这个估计很多人都不理解了。但其实,这个却很重要。
我们的需求分析报告,设计书,各种文档都和国语能力很有关系,更进一步,如何写文章,做PPT等。
坦率来说, 就我个人了解,身边的开发人员都很不重视,写的文档别人看不懂,还不当一回事,过于看重写代码。
作为一个社会人, 能看懂代码的1%都不到, 让别人了解你的想法,更多的是靠国语,而不是代码。
第二点,就是自我控制能力
自我控制能力就难说了,就个人体会最难得是情绪控制能力。这个的确很难,面对上面的压力,有时的确很难。
个人总结的方法是控制不住的时候赶紧大脑里不想,迅速做其他事情。有些话,一旦说出口,就给人留下永久的伤害和裂痕。
当然,每天坚持锻炼,有个强健的身体和乐观心态,对控制负面情绪很有帮助。
第三点, 就是规划执行能力
这个能力一定要有,人生有限,必须认真考虑自己每天干什么,今年有什么想法目标。
有能力,没机会,保持乐观心态就行了,有机会,没能力,这才是最大的遗憾。
毕业8年多了,最遗憾的是第二点和第三点没做好, 很多机会没抓住,也在做管理时候说了很多伤人的话,留下了很多遗憾。
从大学毕业到退休有30多年,时间很长,大部分工作都很枯燥,做开发很难有机会让你高谈阔论,左拥右抱。要想坚持这么久,
必须要寻找兴趣,保持心态。给人打工,必然没有自由,能做自己兴趣的更是少之又少,大部分情况下,我们都在枯燥乏味的工作中度过人生。保持良好的心态,是事业和家庭幸福的最大保障。
上面这些是从大的方面来说。从具体工作来说,主要就是以下5个过程。
- 第一步:学语言、面向过程、面向对象、脚本语言
- 第二步:学数据读取、文件系统、通信系统
- 第三步:学数据处理、算法与数学
- 第四步:学数据存储、数据库
- 第五步:系统与设计
从提高来说,主要有以下3个过程:
- 用某种语言开发某个行业的XXX系统
- 对系统进行分析与抽象,提炼通用库
- 对系统开发流程进行开发设计,制作自动化系统生成工具(如新编程语言,新系统架构等)
作为35岁以上的人,应该在第2和第3过程有所作为。
来源:http://blog.csdn.net/levinjoe/article/details/37730871
版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢。
-END-