正文

如何做一辈子的程序员2012-02-09 11:20:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/edwardguo/53243.html

分享到:

若想在中国能一辈子的程序员, 一摆正心态(消除内因影响), 二找一家注重能力而不是一味省钱的公司(最好是外资,台资除外, 这样待遇不会成为问题), 三不断提高自己的编程思想, 设计思想, 架构思想, 善于总结.

为什么中国现在架构师, 设计师这一类的人才紧缺, 而程序员已经泛滥呢? 原因就是能继续干下去的很少(由于内因或外因), 干到三四十便转行, 而一个架构师没有十年以上的开发经验, 几乎很难胜任. 所以你可以干一辈子, 当你开时做程序员时, 就要为自己定下一个目标, 做一名优秀的程序员, 当做到优秀程序员时, 再为自己定下, 做一名设计师, 接着优秀设计师, 到最后成为一名优秀的架构师, 这其中不花上二三十年是很难达到这高度的, 这样一来, 不就干一辈子了嘛.

 

--------------------------------------------------------------------------------------------------------------------------------------

关于是否要做一辈子程序员的问题,我们继续探讨。
今天收到网友ZQTiger的一篇长篇留言:
其实,不仅程序员有这样的担心,我个人认为,凡是在IT领域当中混的人,特别是从事纯技术方面的人,可以说,90%以上都有这样的担心。

当然,你也可以说,有很多人没这样的担心,但是我相信,这个比例非常少。
除非你是那种特别牛的牛人,公司少了你,虽说倒闭不了,但也至少少了很大一块肉的那种人。这种人例外,不用担心这些事。
或者你虽不是那种牛人,但是你在某个著名的500强里做事,该500强对纯技术人员的薪水/title/待遇等有着特别的考虑。
话又说回来,即便是500强,也有可能在一个小时之内让你走人,你就得走人呢

你可以说,国外很多60岁的老头老太还是程序员呢,说实话,那是国外,国内呢?现状是怎么样的呢?

在国内的公司里,不管是管理层,还是刚入职的新人,都是这么认为的:年纪大一些的,如果还是做纯技术,真的不合适,尤其是IT这样的一个知识更新极快的领域。

但是,就什么样的人在什么样的公司做事的比例而言,你又如何认为呢?
如果我在你手下做,可能,我是碰到了一个伯乐,但是,我会一直在你的手下做事吗?就算我再怎么拍胸脯打包票说我在你手下做到退休为止,你又会相信么?
我不是程序员,但是我也是在IT圈子里做事的人,技术上的事做了很多年。

我对novell netware非常熟悉,现在还有用么?
我能编写大段大段的dos批命令,现在还有用么?
我能~~~~~~~~~~~~~~ ,现在还有用么?

你看看,知识更新如此之快!
我刚工作时,我可以充满激情的去学。
我谈恋爱了,我还可以抽出一定的时间去学。
我结婚了,我还可以抽出很少的时间去学。
我有小孩了,我想我不可能再能抽出时间去学了。

因为我的压力大了
我的精力不济了
和小小年轻以及小年轻相比,再比技术上的学习能力,我肯定是要落在下风了

当然了,你可以说,很多基础的东西是不变的
比如:
编程当中的数据结构和算法,网络当中的tcp/ip原理

我承认这种说法
可是,我们却处在一个特别浮躁的社会当中
我能怎么着

我只能说
如果再让我年轻一次,再让我能重新选择一次
大专读了计算机专业就罢了,但本科,绝不能再选择计算机专业
而且,做技术,最多做到28岁,30岁以前,一定要转行
转成带有技术背景的管理人员
项目管理、品质管理、生产管理~~~~~
什么样的管理都可以
但是,网络管理员例外,配置管理员例外,数据库管理员例外~~~~
我想我从以下几个方面和你讨论:
1、宽泛的程序员的概念
2、我们一直在长跑,多数人掉队了,只有少数人能到终点
3、学习很重要,发明创造更重要,不懂得这个道理不是好的技术人员
4、危机充斥在你我身边,作销售的没有危机?作管理的没有危机?谁告诉你的!
好,我们一个一个的说:
1、宽泛的程序员的概念
很多人都会有些误解,把程序员定位到“编码工作”这一个职位上。难道只有“编码”工作才叫程序员?
我们这里说程序员是一个宽泛的概念,不仅仅是指“编码”工作的人。
如下人员仍然要算程序员范畴:
职位1:高级程序员,架构设计师,研发经理,开发项目经理。
工作性质:只关注核心代码,或系统架构设计,带领开发团队,设计架构,并编写关键程序,保证项目工期,对某开发项目的质量负责。
说明:也许有人说这些职位的人只是动动嘴,赚的钱比费劲“编码”的人赚得多的多!想想看,如果这些人不是从“编码”过来的,如何领导“编码”的人?(真的是混饭吃的人除外)。
职位2:研发部门经理,技术总监,研发副总、解决方案专家、业务专家、高级产品经理等
工作性质:更关注业务方向,技术方向,产品设计的市场竞争力,研发成本,资金与资源的合理利用,面对市场背靠技术开发团队,指导开发的市场着眼点,指导市场的获利方式。
说明:想想看,这些人没有大局观,没有了解技术,怎么去做到专家,怎么去做到企业的技术“大拿”!(真的是混饭吃的人除外)。
2、我们一直在长跑,多数人掉队了,只有少数人能到终点
我们其实一直在长跑,我们并不能告诉所有人,大家最后都能做到“职位2”那个层级!因为,最后到终点的人是少数。
没有到“职位1”的人,肯定不会做到“职位2”,如果连“职位1”都没有做到的人,恐怕确实也不会作一辈子“编码”工作,估计是被迫转行了。这个转行不代表“升迁”只代表“掉队”了!
我们应该承认,有人会在这个过程中掉队,有人根本跑不到终点,甚至根本看不到终点,这也许就是大家面临的危机吧。
各位程序员之间,也在竞争,看看谁能最后胜出呢?
3、学习很重要,发明创造更重要,不懂得这个道理不是好的技术人员
技术的人需要学习,一点错也没有!
但是,技术人员永远学习并不是最重要的,只有不断的创新,去创造才是最重要的。我仍然要强调,只有少数人能够到达终点。
技术不是被动的指挥人,而是要为我所用,任何技术是死的,而人是活的,技术的再利用,以及技术创新是每一个技术人员要牢记的,尤其是程序员,当然永远作被动的“编码”一定不是一个好的程序员!
想想看,现在的哪个技术不是好的程序员开发出来的!?
AJAX?
STRUS?
Linux?
MYSQL?
云计算?
......
不懂得这个道理的程序员,不是好的程序员!!你是好的程序员吗?
4、危机充斥在你我身边,作销售的没有危机?作管理的没有危机?谁告诉你的!
危机时刻在你我身边,无论你从事什么职业,你就是辞了职,在家待着也是危机重重,休想逃过危机!
作销售没有危机吗?
作管理没有危机吗?
谁告诉你的!
想没有危机了吗?这辈子估计没戏了,孔子说:等人死了以后才可以休息!
现在,幼儿园小孩都有危机,何况程序员!
我们只是面对的危机种类不同而已,如果你真的面对不了程序员这种类型的危机,那么就转行吧,去承受其他类型的危机吧!
-------------------------------------------------------------------------------------------------------------------------------
最近csdn有篇文章说程序员可以干一辈子,而且越老越吃香,原因是老程序员经历过失败,有丰富的经验,你雇佣年轻程序员是在拿自己的项目来让他们积累失败经验,而雇佣老程序员则相当于买入他们曾经多年的经验,看似成本增加,其实整个开发,尤其维护阶段成本会大大降低。这个观点是深的我心的,但也不能一概而论。

为什么会流行35岁定律,为什么会有程序员妓女论,为什么绝大部分程序员都时刻不忘思考转型,转行。究其原因有以下几点

1:国内IT行业属于新兴行业,从业者普遍年轻。

2:国内IT技术相对落后,基础开发较少,企业应用多,产品开发少,项目多。

3:程序员门槛相对较低,从业者数量比较大,但真正的高手比例不高。

4:IT企业大的少,小的多,小企业实力不足以做长期的技术积累,多以眼前利润为目标

总之,大环境下似乎我们程序员不易沉迷于技术,不然35岁以后,40岁以后似乎是温饱难以为继。但对于我们个人来说,究竟该怎样应对?很多人都很迷茫,转型做管理,似乎我们性格内向,更重要的是我们内心不太喜欢每天考虑如何应对老板,如何安抚部下;转行?去卖保险?还是去摆地摊?我们4年大学的知识积累,10年工作经验难道就付之东流?所以对程序员来说,如果你对技术兴趣不大 ,并且有其他方面的才华,那你通过转型来施展才华当然最好,但如果你非常喜欢技术,那不妨让我们做一辈子程序员。

曾经逛一个建筑设计的论坛,看着那些帖子突然觉得很像csdn,上面一些设计公司的工程师也在埋怨工作累,加班多,并且以后怎么办,总不能一辈子搞设计吧。这才恍然大悟,原来根本没有什么35岁,没有什么青春饭,这些都不过是自找烦恼罢了。什么行业不累呢,什么行业又不需要不段学习呢?恐怕只有公什么员。

所以究竟能否干一辈子,关键的问题恐怕还是在自己身上,如果一个程序员每天考虑的事是如何转行,那他很可能无法干好本职工作,也无法积累到能够创造足够养活自己的价值,就算是其他职业,也难保证他不想着转行。正如那位前辈分析的一样,老程序员有其自身的价值,能够为社会创造足够的价值就一定可以得到足够的职业尊重。

有时候看到那么多程序员35岁论调真的很烦恼,这些文章不但误导了自己,更误导了那些本来喜欢技术的人,如果你真的喜欢程序员这个职业,就坚持下去吧,不要相信别的行业不需要学习,不需要加班的鬼话;通过努力实现自己的价值,得到社会的尊重,获得应得的收益,这才做人的正道。
 
-----------------------------------------------------------------------------------------
 

写了多年程序,转眼就28了,发现身边的大龄程序员也多了起来,就要到了盛传的"程序员30"的这道坎,想想这些年的酸甜苦辣,重新翻出mvm的这篇文章,看着那么同业的回复,不仅感触良多:

http://blog.joycode.com/mvm/archive/2004/03/23/16987.aspx

mvm针对大龄程序员一定要转市场,转管理的观点,提出程序员还可以做某方面精通(当然也可以是多方面精通)的特种兵。反对的意见也很多,我挑几个典型的:

# 回复: 做军官还是做特种兵?2004-3-23 20:00 | blackwhites
其实我也很困惑,其实30多岁不想干程序员的原因是有很多
1很多人怕吃苦,因为有了老婆和孩子要照顾家,所以都想换方向
2老板喜欢一些年轻点的开发人员,价格便宜,30多岁老程序员面邻压力
3。技术更新太快,而自己的学习速度比较迟钝,全靠吃老本
其实国外那些有作为的程序员恰恰都是30岁以上居多的,而在中国给人的感觉如果30岁还在写代码的话..

# 回复: 做军官还是做特种兵?2004-3-26 14:59 | king
在怎么特种兵,他也是去前线最危险的地方玩命去
军官可以没有那么辛苦,并且薪水也远多于那些在外面玩命的吧
老了,就玩不起了,但成熟了,心眼多了,可以考虑作管理。

# re: 做军官还是做特种兵?2005-9-1 12:08 | neoragex2002
国内软件行业对程序员的普遍认识不足的问题。行业本身的创新性和价值观念、人才评价就都有问题。试想在一个崇尚赚快钱、不注重人才培养的行业氛围中程序员的地位几何?能够得到几许尊重?中国公司并不是处处都是微软。中国的软件行业现状也不能与北美、欧洲相比。审时度势,因地制宜,比较的基础、环境都不一样,因此楼主的这种反思是没有太多意义的。

--------------------------------------------------------------------------------


感触:
的确,我现在也没有以前那么愿意加班了,我得考虑身体,女友;我的薪水涨到了这个程度,经济压力那么重,估计再找工作,很多老板看到简历的薪水要求就会马上把我否决;技术更新那么快,我没有时间去一一追逐;同学都是什么经理,什么长了,我还是一个developer(我以developer为荣), 也许顶个leader的小头衔,老爸老妈是否还能像以前那样夸儿子有出息,女朋友会怎么想......我年纪继续大下去,还玩得起么?

但是我还是决定继续作程序员,因为我觉得还可以做下去. 程序世界不是只有VC/DELPHIC这些程序语言,也不是只有MFC/GLIBC这些库,NT/Linux这些操作系统, 也许有人觉得做特种兵就是要精通各种语言, 熟悉各种LIB和SDK, 才能玩得转, 这些都是耗费巨大体力和精力的事情, 老了就完完了. 人家一个密码学的专家可以干上一辈子, 为什么程序员甚至程序特种兵30就玩不动了? 假如一个程序员把自己的价值就定位到VC JAVA DotNet上, 的确就会疲于奔命, 渐渐就玩不动了.

你看招聘, 很多公司上来就要求各种语言,各种数据库, 甚至还要你精通PS,还能算帐顶个会计, 要求多得不得了. 你看了以后要么自卑,要么鄙视: 他们自己都不知道该做什么东西, 该要什么人. 那些招聘网站的首页,那些有名的外企,绝对不会show这种招聘广告: 丢人哪. 他们只会在基本的程序和平台外语技能后面加上: 精通xxx尤佳,最好该领域有xx年经验. 这里xxx可能是内核定制,可能是语音视频技术,可能是OA系统开发, 或者...... 这些才是他们想要的关键技能, 才是你的价值所在.

( BTW,我无意挑起语言之争,语言是很基础很重要的技能,它们就像厨师的菜刀和锅铲,它们是一门艺术,但是一个厨师不应该仅仅了解这些。)

常常看到有人问: 我精通这个语言,那个语言,大家看看我到底值多少钱哪? 假如你干了两年还这么问,你就麻烦了, 老板看的不是你单纯的程序语言技能, 他要的是你解决问题的能力, 这些更多的和你做过什么项目, 从事哪个领域或者行业的开发有关. 举个例子: 你给一家外包公司的简历, 说你精通VC或者其他什么的那行(不是不要你说), 远远比不上你说有在外包企业从事3年工作的那行文字重要.

很多人说外企好,别人老板尊重程序员,他们的程序员干到50还乐呵呵. 我觉得文化的原因当然有, 但是更加主要的原因, 是因为资本家觉得他们还有价值, 而且是比那些刚入行的青年有大得多的价值. 那么多的内部技术文献, 那么多年通过开发和维护系统换来的经验, 该领域里面那么多的细节, 系统该这么作,不该那么作, 只有这些老家伙了解, 而且几乎是直觉上的了解, 我不仅不能开掉他们, 还要让他们HAPPY, 不能让他们被别人挖走了.

不可能每个人都能转成市场和管理,每个人都能做首席架构师, 但是这不妨碍我们继续在一个自己精通的领域内作我们的特种兵: 我们比客户还清楚他们要什么; 我们不仅知道系统怎么做的, 而且知道为什么必须这样做. 有些地方, 架构师设计的时候, 必须通过我们的REVIEW评审他才放心; 而且有一点很重要: 这些知识比那些易变的语言甚至稳固的硬件更难过时.

(下面是看了评论写的,谢谢大家):

后记1:

我觉得不管大公司小公司,对于一些不管什么项目都做的公司,只想安心做事情的程序员是永远没有前途的,对于那些没有根,没有技术积淀,没有行业背景的公司,程序员假如不能转型成市场或者管理者,他不仅低人一头,而且对于公司永远只是一个可以随时炒掉的螺丝钉。

成为为资深技术人员是出路之一,但是需要合适的土壤,欧美这方面的确好很多,但是在中国找到类似的土壤并非不可能。另外做技术比不上管理风光是必然的,外国中国都一样,但是是否一直做技术,要看个人兴趣和能力。不要迷信外企的"技术管理双阶晋升",那是糊弄人的,但是他们会给技术人员一个起码的自尊,你起码可以说:在公司我比经理级别高(虽然你没有那么大的办公室)。

后记2:

我觉得这是一个一直做技术是否现实的问题,一个如何实现更高的自我价值的问题:有人说年纪大了学习能力并没有下降,但即使保持了学习能力,给你开那么多的薪水,你比刚入行的小伙子的优势在哪里?我可以说,对于新的语言的掌握甚至实战能力,我看到很多学校出来的新人非常不错甚至可以说精通,你难道和一批批的新人反反复复的拼这些?就算你样样比他们强,性价比呢?

 

-----------------------------------------------------------------------------------------------------------------------------------------

记得刚毕业的那会,很多人在讨论30岁是程序员的一个槛。那时初出茅庐的自己,也着实为自己的未来担心过。不过,想来想去,不如踏实提高自己,于是,低着头努力学习着。

当自己逐渐接近这个曾经的槛时,猛一抬头,才发现世道变了,一大群人在谈论35岁是不是程序员的一个槛。

原来,那时,30岁以上的程序员,少之又少。5年后,随着年龄的增长,很多人过了30,才发现30岁并不像当年想象的那么可怕。但35岁因为经历过的人还少,于是成了担忧的新焦点。可想而知,再过5年,这个年龄会提高到40。

于是,一些有长远打算的人,开始考虑,程序员能不能是件一辈子的事。其主要原因,无非是眼下做了很少有人终身以程序员为职业。

事实上,没有任何人可以许你一个未来,即便是工作在那些所谓的稳定职业中。若干年前,有一份在全民的工作,就会被很多人羡慕,可谁曾想,多年以后,有了下岗。

唯一可以给自己未来的,只有自己。为自己打算好一条路,走下去。如果周边的环境,可以为自己带来期望的发展,那很好。如果不能,那就换个环境。如果不具备到更好环境的能力,那欠缺什么,弥补什么。抱怨和担心不能解决任何问题,唯有努力的前行。

阅读(5936) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册