软件工程师的职业规划

在网上看到的关于程序员的职业规划的文章,对本身颇有启发,在此分享给你们,但愿有所帮助。程序员

写这篇文章源于某条微博评论,原内容大概是一个快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小时的学习时间,来补习个人基础知识以及专业知识,而我学习的动力,很大程度上就是来自于个人职业规划,我必定要向前迈出那一步,就算再辛苦,再劳累,也没法阻挡个人脚步!所以,给本身的职业规划,其实也是一个很好的鞭笞你持续学习的理由,不管什么事情,就算再困难,一旦有了动力,我相信就会坚持下去的!

说了不少,不知道个人意思你们能不能理解了,其实概括一下,职业生涯规划是指导你,鞭笞你的工具,反过来也是你一步步须要去达成的目标,相辅相成,互相做用,最终的结果就是将你的内功修炼的炉火纯青,而你也能够凭借你强大的“武功”去得到你想要的一切!我但愿全部看到这篇文章的软件从业者,特别是年轻的程序员们,均可以给本身作一份职业生涯规划,给本身定一条路线,让本身在这条路线上一步一步走下去。

很是感谢你们看完个人文章,欢迎指出个人不足之处,和发表您的观点和评论!!

2012.8.26 凌晨 by 熊绎