一个程序员对职业生涯的思考

写这篇文章源于某条微博评论,原内容大概是一个快40岁的人还在当程序员写代码,评论内容大概是:有些人就喜欢当程序员写代码,无可厚非。但是,现实情况中是否真的能做到“无可厚非”呢?我思考了一阵子以后,就有了这篇文章,希望与所有职场人共勉。

首先我要申明一点,我不是砖家,也不是牛人,我只是一名普通的IT从业者,本文只是我对我们IT人的职业生涯规划的一些观点和意见,如果大家有不同意见,或者觉得我的观念欠妥,欢迎讨论,但是拒绝谩骂、吵架和攻击,谢谢。

简单介绍一下我的情况,我是03级的本科生,07年毕业后一直从事软件方面工作,现在是一名项目经理,到今天为止,我差不多有5年半的工作经验了(我是07年3月就进了公司)。那么为什么我现在会对职业生涯规划有感悟呢?因为随着时间的增长,我越来越觉得我们混职场的IT人(当然不限于软件行业,只要是职场人)如果没有一个很好的职业规划,那么随着时间的流逝,我们逝去的不仅仅是年华那么简单;当你某天猛然发现当年同一起跑线的同窗朋友,现在跟你的差距大到让你愕然时,你就真的很难很难逆转这种局面了。当然,我这样抽象的说,很多人无法感受到这种紧迫感和恐惧感,下面我分3个方面来说明职业生涯规划的重要性。

第一,职业生涯规划是事业的导航

首先我们搞清楚,事业是什么??乔布斯的苹果公司,叫事业;你每天上班路上卖油条豆浆的大妈的早饭摊,叫事业,同样,我们IT人每天上班时,在格子间干的事情,那也叫事业!很多人总是觉得自己是个小职员,每天都做着小事情,似乎事业这种词汇应该总是伴随着老总、资金、企业这种概念的,所以,反正我只是个小职员,反正我又不是名校毕业,反正我的学历一般,就算规划的再灿烂,也只是画饼充饥而已,还不如每天耕好自己的一亩三分田,剩下的就是老婆孩子热炕头了…(中枪的同学举个手看..)

我认为这种思想最大的毛病就在于自我否定。我举个例子,CS 这游戏大部分人都应该玩过吧,你进一个主机开始游戏以后最多的动作是什么??不是开枪,不是到处走,不是换子弹,而是按tab查看排名!每个人都想多杀点人,多拿点分,进入警察或者土匪榜的前三甚至第一,难道你会说:反正我技术一般,还不如给别人做嫁衣,让别人杀了拿分呢?所以,我们在职场混,也好像在玩一个现实版的游戏,那么我们的目的就是拿高分,也就是向更高的目标进发,无限的接近目标,甚至超越目标,而职业生涯规划,就是你达到目标的一个个里程碑,它会每时每刻为你指明你的方向,让你明确你的目标,并一步一步走下去,所以职业生涯规划绝对不是画饼充饥。

当然,你的目标必须切合实际,但是也不能太过于保守,甚至可以是一种阶段型的规划。比如我,我07年进公司是程序员,程序员的地位好工作大家应该是再熟悉不过了,我本科读的是个三类大学,还不是软件本职专业,但是有幸能找到这样一份工作,我还是很感激老板的。既来之则安之,学习技术技能,累积经验,同时关心行业的发展前进和自身的晋升路线。当时我了解到,程序员的发展一般来说是这样,程序员→软件工程师→架构师→系统分析师(技术路线)或者项目管理师(管理路线),最终到达技术总监,或者项目总监甚至CTO、COO或者CIO等高级职位。也有程序员后来进入测试领域,后来成为QA或者QC,最后成为质量总监等。我根据我本身的性格,兴趣,和切合自身的发展方向等多方面因素考虑,定下来自己走项目管理的路线,我给自己的职业规划是这样:程序员→软件工程师→项目主管→项目经理→项目总监→CIO;而我也确实一步步正在实现了自己的规划,能够到达今天的这个位置,职业规划起了相当大的作用。它总是在不停的指引和鞭笞我向目标进发,而我自己也从来没有感到彷徨,没有困惑过,因为我有目标,有规划,有方向,这就是职业规划的力量!因此,不要因为你现在的微不足道而放弃对自己的规划,饭要一口一口吃,只要你做好切实可行适合于你的规划,并且一步一步的按着规划来做,达到目标就只是时间问题而已了!

另外有一点我想说一下,就是很多人认为“计划赶不上变化”所以这种规划性的东西就算写的再好以后也可能会“赶不上变化”。我认为吧,如果你还是在学校的学生,可以有这种想法,但是如果你已经入了职场,那么就别这样想了,除非你想做一个经常转行的人,那我就没办法了。我当年在学校被辅导员逼着写职业生涯设计(比赛)的时候,我也有过这种想法,并且觉得职业生涯设计时个扯淡的事情。但是后来工作后发现这个还是非常重要的,如我上文所述,是个不可或缺的东西,至少我这么认为,也确实给我带来了很好的收获。这个毕竟是个在你职业中导航的东西,就算有些和你的现实生活有些避免不了的小差距,但是至少一份好的职业生涯规划在大体上会给你一个方向性的指导,不至于让你在某些时候感到迷茫。

Careers - Road Sign

第二,职业规划能给你带来你想要的东西

有句老话叫做“无欲则刚”,我承认我是俗人,我没有那么坦然淡定的心态,我在某些时候甚至俗到想要鱼和熊掌兼得。但是,这错了吗??答案当然是没有。只要通过正当途径,你获得的越多,反而证明你越有本事。

有很多程序员总是有这样想法:现在我是不行,但是等过几年我有经验了,工资和职位自然就上去了。暂且不说这种想法对还是错,我先讲个真实的故事。我曾经有个手下,叫小Y好了,是09年的应届生,被公司招进来后安排在我手下当程序员。相处一段时间后,我发现小Y这个人能力很一般,也不愿意利用空闲时间学习(因为是吃技术这碗饭,所以我觉得学习真的很重要,后面会详谈),而且干活很粗糙,写的代码往往总是要我返工修改。当年年底我给他的绩效考评比较低,因此第二年加薪的时候,他相较于他的在其他部门当程序员的朋友要低很多(当时是一批招的),所以对我对公司有很大意见,后来我找他谈,我就很直接问他凭什么要求加薪水平跟别人一样?他回答我说他工资太低,来了一年还相当于应届本科水平。我说可是你的能力比某些应届生要差很多(当时我有另一个2010年本科应届生手下,能力非常强,起码有2年经验程序员的水平)。他就回答我说他有经验。所以看到这里,各位也也应该猜到了结局,不错,后来小Y走人了。

我讲这个故事看似和职业规划没有太大关系,实际上我觉得还是能说明一些问题的。也就是说,经验重不重要呢??毫无疑问,在任何行业,经验都是非常重要的东西,而且用钱也买不来。但是大家切记,不要认为单凭“经验”这东西就可以无敌了!比如你喜欢搞技术,你想以后当个牛X的架构师,但是你仅仅靠当程序员而不去学习相关知识,就算累积10年编码经验,也充其量只能到软件工程师的程度,到架构师的那道坎很难跨越过去。那么你想得到的,终究还是水中月,看起来很近,实际上还是很远。

有些朋友会说:我不想的到什么,我不想要什么,现在这样挺好,我也挺喜欢写代码的,职业生涯规划对我来说也就没什么用。好吧,我承认,这样的朋友境界比较高,我自愧不如。但是你要明白,你是生存在社会里面,你不是一个独立的个体,你有家庭,你将来会上有老下有小,甚至你还要担负你老婆的生活,我不知道当你的父母需要你养老,你的房车需要你还贷,你的儿女需要你缴学费,乃至于你的儿子需要娶媳妇(如果是女儿就赚了,哈哈)的时候还能不能有这种淡定的心态呢??还有,你们想想,当你30好几岁了,快40岁了,还和20出头的年轻人在一起写代码的时候,会是什么感觉??他们年轻力盛,充满激情,跟你当年一样,熬通宵,连续工作10小时,不规律吃饭,哼都不会哼一声,但是你呢?当你体力下降,记忆力下降,逻辑分析能力下降,思维开始迟钝的时候,你觉得你还拼的过他们吗??当你的公司为了维持一个仅仅有“经验”而其他各方面都不如年轻人,却还要支付高于年轻人一大笔工资的中年人的时候,你觉得公司会怎么做?我不知道各位看到这里有什么想法,反正我每每想到这种情况,我的后背会发凉,我会觉得很恐怖,真的很恐怖!所以你最好还是收起那份淡定,去努力的博取你所必须要博取的东西吧,职位,薪酬等等!想要这些,说容易也容易,做好职业生涯规划,自然总有一天能够达到目标。

当你做好了职业规划后,给自己定下一条线性的职场进化路线图,定下每个里程碑,每个小的关键点,包括为了达到这些里程碑和关键点所需要做的事情,或者需要累积的知识,那么这样在你日常工作中,你不会胡乱的去累积所谓的“经验”,而是有针对性的,有目的的去学习或者去巩固或者去锻炼你的能力,这样一来,日积月累,你就自然而然的按照职业规划的线路走下去了,反过来说,你就一步一步的实现了自己的目标,得到了自己想要的东西。比如我当年给自己顶下项目管理这条路,我在平时工作中就非常注意锻炼这方面的能力,比如跟客户沟通,比如撰写文档,比如协调团队,等等,另外,我也强制要求自己学习项目管理方面的知识,强化管理的理念和能力,并将理论用于实践,将书本上学到的项目管理知识,比如进度管理,成本管理,范围管理用于我现实的项目中,这样就形成了一种良性的循环,我学到的越来越多,工作也越做越好了。那么自然而然的我就从软件工程师到项目主管,再到现在的项目经理,我想要的,我确实得到了。

第三,职业生涯规划能够让你持续的学习

前面我在说小Y的例子的时候说到过,作为一名技术领域的人,持续学习是非常重要的,这是你在这片残酷竞争的环境下生存乃至拔尖的唯一方式。前面我说过,仅仅靠工作中的那点经验累积,对于我们的发展是肯定不够的,必须要通过充电来补充知识,才能推动我们的晋升。而很多搞软件的都面临一个问题,就是没有动力去充电,一想到看书就头大,还是写代码比较有意思。

其实大多数人都明白学习的重要性,只是真正能够做到持续学习的人实在是少之又少,你扪心自问,你每天看书(技术相关)时间有多少?大多数人少于两小时的,可能更多人会选择逛逛博客园或者csdn之类的网站罢了。学习的重要性我在这就不老生常谈了,大家读了这么多少年的书肯定就听了多少年,难就难在坚持。我去年考了复旦的在职硕士,今年考了软考的高级专业,信息系统项目管理师,为什么?因为我觉得我的知识不够用了,需要充电,需要接受更多的知识来帮助我达到我的职业规划目标,而这些考试,都是需要阅读大量的资料,学习大量的知识才能得以通过的,真心不容易!那么我的动力来自于哪里呢?就是来自于我的职业生涯规划。

5年前我给我自己的职业生涯规划大致是这样的:程序员→软件工程师→项目主管→项目经理→项目总监→CIO,越向后面每一步所花的时间和所付出的努力就越大,也就是说,我现在已经到达了项目经理的位置,如果要向前再迈一步,我必须要付出可能比前三步还要多的时间和精力,而我目前的水平还远远够不上项目总监,那么怎么办??学习!!!和修炼武功一样,只有通过学习理论以及将学到的知识应用到工作上产生经验的累积,才能让我真正的提升内功,达到下一个境界!

我目前正在备考软件架构设计师,明年上半年准备考系统分析师(都是软考的高级考试),下半年考PMP,后年上半年准备硕士论文答辩(这也是职业规划的一部分)。我想等到后年,7年+工作经验,加上我的知识累积,去拿下项目总监的位子应该是不在话下了吧,这样我就又完成了职业生涯规划的一步了。我现在每天保持至少4小时的学习时间,来补习我的基础知识以及专业知识,而我学习的动力,很大程度上就是来自于我的职业规划,我一定要向前迈出那一步,就算再辛苦,再劳累,也无法阻挡我的脚步!因此,给自己的职业规划,其实也是一个很好的鞭笞你持续学习的理由,无论什么事情,就算再困难,一旦有了动力,我相信就会坚持下去的!

说了很多,不知道我的意思大家能不能理解了,其实归纳一下,职业生涯规划是指导你,鞭笞你的工具,反过来也是你一步步需要去达成的目标,相辅相成,互相作用,最终的结果就是将你的内功修炼的炉火纯青,而你也可以凭借你强大的“武功”去获得你想要的一切!我希望所有看到这篇文章的软件从业者,特别是年轻的程序员们,都可以给自己做一份职业生涯规划,给自己定一条路线,让自己在这条路线上一步一步走下去。

非常感谢大家看完我的文章,欢迎指出我的不足之处,和发表您的观点和评论!!

posted @ 2015-07-13 14:53  gzm2012  阅读(315)  评论(0编辑  收藏  举报