
一直以来对于IT从业者都有一个印象:IT从业者都是吃青春饭的,30岁之前可以做,30岁之后就要转别的岗位了。也不知道什么时候出现的这样一种传闻,并且似乎大家都相信这是真的,并且是一种普遍现象。
但是真正开始工作了我才发现,如果说仅仅是因为加班的话,那么比IT行业加班严重的行业不再少数,而目前就IT行业的整体环境和未来发展来说,选择从事IT行业并不是一个坏的选择。
那么为什么会有这样的印象呢?
因为程序员在很长的一段时间里,确实是吃青春饭的。
曾经国内一个很著名的企业老板说:在IT行业超过35岁的技术人员将被淘汰,所以不要35岁以后的技术人员。导致整个业界尤其是在软件开发行业都在排斥年龄超过35岁的人员,也导致很多工程师为自己35岁以后的前途发愁而转行。
很多人也都认为IT行业是年轻人的行业,而软件开发就是吃青春饭,过了35岁就没用了。
当时IT行业的整体环境,基础库毕竟就那么些东西,大众类应用也少得可怜,搜索,邮件,IM,杀毒,下载,播放器,就这么些东西而已,容不下太多普通程序员。而企业软件还只是一种小工具,对很多行业都还没有形成实质性的冲击,做企业软件的都是乙方,像孙子一样求着人家签下合同,又得千方百计讨好甲方,所做的东西,只能是甲方工作的补充,不能做颠覆性的东西,破坏人家的饭碗。所以企业软件的程序员实际上是边缘化的人(不考虑军方和金融类的)。
企业软件,由于企业的环境经常变化,再者软件公司也需要不停地获取收入,所以软件更新很快,很多都是签了合同开发完验收通过就行。做这样的软件,首先要考虑的是投入产出的问题。由于合同签订好了,收入是一定的,为了压缩成本,老板们就会雇用一些年轻的有干劲没有负担的年轻人。
假设一个经验丰富的老程序员,能顶上三个年轻人。那么同样的钱,老板已经可以雇三个年轻程序员了,另外年轻的程序员可以没日没夜地加班,而老程序员由于年龄大了,有家有孩子需要照顾,不可能和年轻人一样加班。再者做企业软件的都知道,团队一般都想找行业专家加经验丰富的程序员,但是这种人就像咸菜,最好要有,没有也行,多了却不行。就那点收入,多了你养不起!
这就造成了做企业软件的团队,通常都是有一个有经验的人,带一帮小孩在做。这些小孩做几年后,基本就得转行。因为他们在做企业软件的过程中,本身技能增长有限,另外也没有向上的空间。一群人,不能都把目光盯在一个位置上不是。
拿谷歌微软里,走技术路线的程序员说事,是没有说服力的,他们都是做基础库开发的。就像你不能因为出了玄奘一个和尚,就认为和尚的前途,也包括从唐皇那里领了文碟,去天竺做外交这个选项。一个人的命运,甚至一个职业的命运,都是有当下的经济情况和行业背景所决定的。而企业软件的现实决定了程序员更多的还只是一种吃青春饭的职业。
什么时候我不这样想了?
自从上班之后,虽然我做的不是开发,但是也看到了社会上的种种职业,加班的多的是,不稳定的更多,在这个时候反观身边做IT的朋友,才了解到行业的差距。而所谓的年纪大了编程能力下降,逻辑能力不行的论调,更加的毫无意义,就工作来看,任何的职位经验都是非常的重要的,何况程序员作为技术人员,从业时间越长,经验越丰富,技术水平越高。根据北卡罗莱纳州立大学计算机科学系对编程能力和年龄统计出的数据研究表明:程序员的编程能力在从25岁左右开始上升,一直到50岁后才会开始下降。也就是说,程序员的技术能力是可以随着时间积累的,这一点上,跟其他技术职业并没有什么不同。
所以,年龄大就不能编程了,这个观点是错误的,年龄大不仅可以编程,而且经验还会越来越丰富,技术水平会越来越高,如果IT行业要长久发展,肯定会需要资深的工程师们的支撑。
所以啊,如果非要说IT从业者是吃青春饭的话,那么每一行业的都是在吃青春饭。IT行业本质上和其他行业没有太多的区别。