程序员职业规划。
职业规划就是对职业生涯乃至人生进行持续的系统的计划的过程。一个完整的职业规划由职业定位、目标设定和通道设计三个要素构成。
如果把你的职业人生想象成为一个你正在开发的软件产品的生命周期,现在你的所有需求都已经明确(有车,有房,有钱,有公司等等),接下来我们就要开始为自己做职业规划了,在制定这个职业规划的时候,我们要重要的注意以下4个方面的内容,这个四个方面运用到整个人职业的生命周期中。
一、选择市场。
一定要谨慎的挑选你要关注的技术和商业领域。如何权衡风险和收益?
都是做软件开发,你究竟要做与硬件相关的还是与网络相关的?与手机相关的还是与汽车相关的?每一个分支都有专家和权威,你要确认自己想站在哪一个分支的顶点。在深圳很多程序员,为了生存,先入行再转行。程序员需要积累,面试官不喜欢一张白纸上满是编程理念的空头支票。
二、投资
做生意哪有不投资就赚钱的好事,你的知识和技术就是你这件生意的基础。所以你要在这两个方面合理的投资,时间,金钱。只知道在理论上使用VB或者Java已经远远不够了,那么在新的环境下,新的平台下,又有哪些新的技术你应该具备的呢?
三、执行力
用我老板的话来说单纯有技术出色的员工,并不能给公司带来利益。员工必须要有产出才行。有的时候一名优秀的员工产出远远不及一名普通的员工,反而有时候会让简单的事情变的一团糟糕,2分钟一个简单的算法,被花上2天时间提高0.001%的效率这种事情也是经常发生的。所以我们应该考虑的是能否创造最有利的价值而不是完美,
四、团队
程序员孤军奋战成不了大事。一个再优秀的程序员也完成不了整个windows操作系统的工作,虽然我见过一个人是可以独立完成破解windows的工作的。所以如果不想过于孤单和山寨,请找到一支正规军加入他们。
五、又是市场
你们肯定会说,你开始写循环了是吧?怎么又是市场?
一个人选对了市场,投资技术,有了回报,有了产出,有了自己的团队,恭喜你,你离出产品的日子不远了。但是你有没有考虑一下你的产品的市场,若是无人知晓,毫无用途,又怎么会有利润呢?你的成绩又怎么会被老板和同行认可呢?请记住:一个团队奋斗了1个月写出来一个:Helloworld!是赚不了钱的。zc530.Com
zc530.cOm编辑推荐
程序员的职业规划
经济的黯然失色丝毫没有影响高科技企业的人才争夺。在硅谷,从谷歌这样的大型企业,到最小规模的初创型公司,各家都在争相挖掘最优秀的IT人才。
为了防止有经验的老员工跳槽,美国加州的大公司纷纷提高了薪酬和奖金,例如《金融时报》称,毕业不久的初级工程师的薪酬去年上涨了30%至50%.
而微软早在2011年年中便计划为员工加薪,并提高薪酬中现金部分的比例。在发给员工的一封电子邮件中,微软CEO史蒂夫。鲍尔默表示将为发展最快的市场上的部分员工加薪,其中包括研发部门的中高级员工,以及某些地区的所有中级员工。为了更好地奖励出色的员工,微软将使受奖员工比例由之前的50%提高到80%.鲍尔默在电子邮件中称,这将是我们有史以来幅度最大的一次加薪。
不仅是硅谷,去年一整年,这股相互挖角的风气还刮到了世界各地的就业市场,中国也不例外。近日发布的《2011中国企业招聘现状调研报告》显示,高科技行业2012年招聘需求将呈现大幅反弹,较2011年将增加近2.3倍,增加幅度位于各个行业榜首该报告是人力资源公司CHINAHRKEY针对167家企业招聘调查的结果。前程无忧(51job)的统计也指出,2011年,计算机/通信/电子行业的招聘职位数排行第一。
而韬睿惠悦发布的薪酬调研报告中,高科技行业在2011年的实际加薪率仅次于银行业,而在2012年的预期加薪率则与银行业持平,皆为10.7%的幅度。2012年全球经济形势并不明朗,中国市场也会延续高通胀预期。如何在此种情况下吸引、保留人才,将会是中国企业的一大挑战。韬睿惠悦全球数据服务咨询中国区总经理许文宗表示,为了让核心岗位具备竞争力,在高科技行业,研发、销售这些关键岗位的年度总现金收入就比该行业平均水平分别高出18%和10%.
事实上,高科技行业的人才争夺战从未停止。在这个领域,近期最引人注目的莫过于去哪儿和携程的人才争夺了。经历了10年的发展,在线旅游网站的战火已经从用户、流量和资源竞争燃烧到了人才领域。去年底,去哪儿CEO庄辰超甚至在微博中称:携程12周年庆当天我在携程总部办公楼各个办公室挖人,收获颇丰啊。
对此,携程人力资源部总经理施琦不愿置评。但他坦言,随着进入中国在线旅游业的公司越来越多,这个行业的人才竞争变得空前激烈起来。实际上,携程每年都会参与薪资调查,并根据调查报告对员工和经理人的薪酬进行相应的调整,所以携程每年重要骨干的流失率都是个位数。
相比之下,去哪儿的招聘和留人策略则更为激进。2011年,去哪儿的员工数从200多人一下子扩张到1000多人,其中,从校园招聘的毕业生达200人左右,核心员工的离职率约为5%.随着部门的扩张和架构的调整,每个部门的主管都需要发动各种资源和渠道进行招聘。
为了吸引人才,目前公司经理级以上的员工都持有股权。2010年7月前,去哪儿实施了全员持股政策。去哪儿网副总经理钱臻表示。毕竟,在线旅游业的从业人员本身并不多,富有经验的人才就更加稀缺了。今后一段时间,旅游电子商务公司的人才质量很可能成为企业间竞争的关键。
除了OTA领域,各大门户网站也纷纷祭出薪酬的手段保留人才。2011年春节后,搜狐几乎全员提薪10%左右;腾讯在去年4月人均涨薪9.3%;新浪去年5月的提薪幅度大约为14%;网易门户在6月的调薪覆盖了60%的员工,综合调薪幅度平均为25%.
这是因为,眼下的门户正处于第二轮扩张阶段,很多旗下的频道希望分拆上市,于是缺人成了普遍现象。另一厢,IT企业的从业者大多数为年轻人,他们普遍加班多、压力大,流动性也大,而涨薪是最直接的留人方式。
腾讯的HR负责人此前对媒体表示,互联网行业的人才非常稀缺和宝贵,真正好的人才不多,且都去创业了。为此,新进入到这个领域的人才,企业都会用超常规的办法去保留。
不过,施琦并不完全认同始终向市场看齐的薪酬管理方式。去年,不少人都见识过了某些公司高调地用2至3倍的薪酬挖人,但过了没多久,又很高调地裁员。
2011年年中开始,电商业就陆续传出有企业倒闭的信息,例如金光集团投资的百货B2C网站大货栈,以及我友网、飞虎乐购等网站也在进行业务和人员的大调整。而B2C网购平台品聚网也发布官方公告称,由于公司资金链断裂,将开始准备进行清算,并暂停公司相关业务。而团购网站的裁员信息也是接连不断,有员工甚至表示2011年年终奖将一无所获。
施琦认为,当前浮躁和混乱的市场环境下,公司除了提供更具竞争力的薪酬外,为员工提供更多的发展机会,让他们找到真正的归属感很重要。
女程序员的职业规划
很多女学员对于自己的程序员职业都抱有怀疑的态度, 在此小编一篇女程序员的职业规划,供参考。
规划路线
范范的讲,老四样路线:1.技术线路。2.业务路线。 3.实施路线。4、销售路线。
女程序员的优势在哪里
IT这个行业技术更新很快,技能永远没有最高。挖掘和发挥女性自身的优势,才能立足于这个看起来男性主导的IT圈,当然,同时也需要自身不断的学习、积累和提高。
那女IT的优势在哪里呢?女性在细心和耐力方面比男性表现得更为突出。女性在技术管理方面更有优势。女性完全可以胜任上述规划路线的2、3、4。
很明显的一点,男性往往追求的是技巧(skill)的提升,而女性的优势则是ability(能力)。我周围的男IT们大多都有过或长或短的那么一段热血情长的编程经历。他们是IT界的钢铁战士,打了鸡血一般天天只睡3、4个小时,写代码,钻研技术,精神食粮远远重于物质食粮。但是女性对于技术钻研的狂热,似乎没有男性那么持久。这里不除去一些外界因素:比如家庭、身体状况等等。拼技术精通程度也许我们没有胜算,但是我们完全可以撑起那另外半边天。
在起步作软件工程师的3-5年里,自我学习,收集信息完善大脑知识网络。自我领导,诚信自律,沟通协作,不懂得协作又怎能妥善管理团队?通过作软件工程师的磨练,以一个崭新的面貌迎接职业生涯的重要拐点。发挥我们的团队领导力,转型的工作方向可大致分为:项目管理、测试管理和实施管理等。在领导团队的同时,在不断的平衡和协调中,自己的造诣也会得到大幅提升。到达业务领导的范畴时,依据个人能力的长处和兴趣而定到底可以胜任什么岗位。
谁老说女程序员不仅脾气大还拖后腿?在这里我要给还没毕业的准女程们一些信心:我所在的团队里3个妞妞都是主力,经常帮男程们解决各种各样的问题。对了,不知你知道否?世界上第一个程序员是女的。英国著名诗人拜伦的女儿Ada Lovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。不管你信不信,反正我是信了~
不可否认的事实是,女性是这个行业里不可缺少的一分子,我们创造的价值也在继续让团队乃至整个行业受益。
.Net程序员如何快速成长之我见[1]
在面试一些新程序员的时候,当问他为什么选择.net方向时,经常听到一些这样的回答:记得曾经我的老师对我们说,当你在开发语言和工具方面不知道怎么选择的时候,那么你只要跟着微软走就行了。所以最终他选择了.net。我想大家都曾有过类似的经历。当经历过数年之后,一些人在.net的某方面成为了专家,有些人精通数据库方面,有些人精通web界面设计,有些人精通系统架构。还有一些人是什么都会,但不管哪一方面都算不上精通。当然还有另一些人,他们没有选择.net,他们选择了java,在若干年之后,他们说:java程序系统比.net系统更稳定之类。既然大家都是.net阵营,暂且对他们不予讨论。
结合自己的亲身经历,对准备成为。net程序员和已经成为。net程序员的新人一些快速成长建议:
1.选择研究方向后不要动摇
对.net好还是java好的问题,我一向的观点是:它们都好,它们都是软件开发领域的杰出工具,它们都能够做出非常出色的系统。评价一个系统好与不好的标准不在于开发语言,而在于系统本身,更多地在于这个系统的开发者-程序员本身。只要你是一个出色的程序员,你完全可以用你擅长的开发语言开发出高质量的系统,而不管这种开发语言是.net还是java。而如果你过度地徘徊在研究它们到底谁更好的时候,甚至不断地在二者之间辗转的时候,你损失的将是宝贵的时间。
2.尽量缩小研究范围
.net只是一个大方向,你应尽量将自己的研究范围缩小,比如专注于数据库,专注于xml方面,专注于ajax,只要你专注任何一个区域深入研究,当你成为专家之后,都不会愁饭吃。反之如果你什么都会,而没有一样真正精通,那么你可能永远只能做一个普通程序员。
3.找到正确的入门方法
不管做什么事,方法很重要。特别是入门时的方法。正确的入门方法将大大加快你学习的进度。了解语言本身和前提技术是最先要做的事情,比如你选择c#方向的asp.net,那么你必须先学习c#基础语法,和asp.net基础知识,并实际写小程序测试你学习的成果。当学会基本语法后马上找到asp.net的官方入门指导。微软做得很好的一个地方就是他的帮助系统做得很好。新人容易入门,建议首先从入门教程开始,这个东西就在你的机子上,在Framework SDK的菜单里面。强烈建议把这个教程全部学会。
4.多看别人的成果(源代码)
这个很重要,如果你是一个团队的新成员,那么看他们写好的代码将是非常好的学习途径,因为那些都是成功的代码经验。如果你还没有加入团队,是自学,那么找一个好的学习网站,多看上面的源代码也是很好的方式。另外一个强烈推荐的途径:仔细研究微软的.net StarterKit,个人认为这是.net入门学习途中最大的收获。
5.敢于接受新项目挑战,敢于尝试
主动承担公司的开发任务,敢于在项目中尝试你最新的研究成果将对你自身技术水平提高带来非常大的帮助。记得当初我在做一个建站平台项目时有过这样的经历,之前公司开发的项目大都在原有技术积累下面用成型的框架做开发,那时我也正在学习asp.net,不过那个项目我是主程序员,因此在开发上有很大自主性。于是1.0时我尝试将所有用户文章保存在web服务器的xml文件里,而不是像传统项目那样保存在数据库里,以希望减少web服务器和db服务器之间的数据传输。结果1.0系统实际运行时确实达到了我的目的,虽然随着数据量的大量增加,最终导致了IO瓶颈。但通过后来对IO瓶颈的优化解决,我在文件系统、服务器进程、xml应用、代码规范和性能优化等方面学到了很多东西,倘若当初按原来的模式写程序,将错过学习这些知识的很好机会。
6.不断推翻自己,敢于重构
这是对程序质量的要求,我认为只有不断地优化和改造自己的程序代码,才能最终写出高质量的程序,做出高质量的系统,最终使自己的技术水平提高。通常我会把实现一个功能的代码量作为衡量代码质量的标准,代码越少,越精简,同时又具有良好的可读性,就越理想。重构需要几个前提:首先是项目时间允许,然后是确实找到更好的代码组织逻辑,如一种很好的结构模式,更合理的面向对象调用方式等等。只要找到更好的解决办法,那么勇敢地推翻原来的程序框架,重构它,经过不断地重构后,有一天你回过头去看之前自己写的程序时会有一个感叹:哇,怎么以前我的程序写的这么烂阿。
7.跟上技术更新的脚步
软件技术更新速度有时真的让人很郁闷,经常听人说,刚学会.net1.0,马上就出了1.1,1.1刚完成一两个项目,又出了2.0,用2.0不到一年已经出了3.5,但现实就是这样,你必须得跟上脚步,当使用asp.net的时候,你就不能再像以前用asp那样去写程序,当使用.net2.0的时候,你要敢于使用masterpage,skin去代替原来的usercontrol模式,原来的网站皮肤实现模式。而现在出3.5了,你必须马上学习vs2008,学习Silverlight。只有跟得上技术更新的步伐,你才永远保持自己的技术领先地位。
以上几点建议,希望能给一些新加入的.net程序员们一些参考。
java程序员职业规划经验分享
java程序员职业规划经验分享
本文主要介绍java程序员的职业规划 ,希望能给想在java程序发展,还没有职业规划的朋友一些启发。
(一)java程序员职业规划步骤
java程序员职业规划第一步:
1、基础必备:至少看过2本语言基础书和一本领域技术书。
2、部分参与项目1-2个。
所需时间:3-12个月
java程序员职业规划第二步:
1、行业知识领悟、扩展相关应用知识。
2、完整参与项目1-2个。
3、可以指导新人完成工作。
所需时间:6-12个月
java程序员职业规划第三步:
1、深刻理解面对对象知识。熟悉常用架构,对公司采用的架构能提出改善意见。
2、参与需求讨论并能提出简化方案。
3、能为决策提出一些建议。
java程序员职业规划第四步:
1、能够对整体需求方案做出精确描述。
2、运用一种架构对项目、产品进行设计。
3、评估项目风险、以及预留方案。
4、实现核心组件、技术难关。
5、行业技术指导。
(二)java程序员职业规划要点
(1)只会编程是不够的
仔细思考在哪个商业领域投入时间。软件工程师(软件工程培训 )不能只会开发软件,应该要成为这个业务领域的专家。你的行业经历应该成为你的重要才能。有机会多与公司行业内人士接触,选择一本与你公司行业有关的杂志,找一个行业网站。只有了解了一个行业后,你才能创造性地有所建树。学习行业是如何运转的,了解一些财务基本知识。
(2)在思维上投资
要学会抓住机遇。
多学习新的技术,编程语言,可以改变你的思维方式。
(3)做一名通才
你的技术水平应该超越技术平台。
经常学习一些新技术。
程序员职业规划解决方案
为自己做职业规划,已经不必再来讨论其重要性,只有谨慎对待。
职业规划更要根据个人的理想,从实际出发。那么怎么才算实际呢?所谓的实际应当包含以往的经验、现有掌握的技术、教育背景、现实的工作环境、以及一些其他因素。如:婚姻、年龄、学习能力。花一些时间来思考这些问题,不能总是跟个感觉走,也不能总是太理想主义。
1、经验对一个人来说是绝对重要的,频繁的跳槽无疑是职业生涯的最大忌讳。如果是为了一点点工资而转移阵地那更不值得。所以不管当初是因为兴趣、还是因为无所选择而介入这个行业,这么多年的体会也绝对是一笔财富。如何运用我们的经验以及如何掌握更多才是值得考虑的。
2、衡量一下现有掌握的技术,要不要在学习新的技术。这一点也相当重要,就这个行业来说你不学习就势必落后。但新技术太多了,很多朋友还在感慨XXXX还没用熟,XXXX又出来了。在这一点上,我对新技术的定义是,你未知的技术都是新技术,也许它已经出来好多年了,但他很好用。我们的目的是在于解决问题。所以在学习新技术也就带有了一定的选择性,不能一味的追求,什么东西比较绚,什么东西强,永远从提高生产力和时间成本上考虑。总结这一点就是,要不断的学习,从而增强自己解决问题的能力,这样就永远不会out。(但如果你是绝对新手,还是多学点新技术好)
3、我的学历很低,要去自学考一个证吗?这个可以从成本和收益上考虑。考虑一下你现在的工作一年的收益是多少。如果考到一个证书,一年的机会收入是多少。继续受教育所花费的时间、以及其他成本是多少。还要考虑其他的影响因素。我的建议是,这个证书真正有用,让你能达到一个比别人更高的起点;你的志向中学历有最基本的要求,如果有这两点当中的任一点,你就应该去考取文凭。
4、如果现实的工作环境还不错,那在好不过了。每个人都应该珍惜自己的这份工作,首先是要干好自己本职的工作。希望能根据公司的制度的到晋升。现实当中可能并不会这么尽如人意,好多人努力工作不一定能得到回报。但大多数情况,你的努力领导会看在眼里,你应当在适当的时候向领导提一下。如果你的老板不太抠门,我想10有89还是能成功的。如果实在是不行,也不能怠慢工作,你应该在工作中得到更多的行业应验、提高综合素质。如果你的所做的工作,或者是你自身已经对公司来说具足轻重的时候,我想钱不是问题。
5、还得考虑一些现实的问题,你得花一些时间来找女朋友、陪老婆逛街。还有很多事情需要考虑。
以上是在做职业规划之前需要考虑的一些实际的问题。接下来具体的分析如何实现,在最后你可以根据自身情况给出一套合理的解决方案。以下是一个帮助个人分析发展、学习的导图。其中你看得出有很强个人色彩,很多的地方都只是提到了微软的技术方案,而忽略了其他的,你也可以再此基础上加以补充。
程序员职业规划解决方案
一、在工作中寻求提升
我给出了3类程序员可能发展的方向。其中最强调的就是在工作中得到提升。在工作中提成,一般对程序员说来有2个目标。一个是做架构设计-将来可以做产品的规划,或者项目规划和指导。另一个往管理发展,将来可能涉及的不知是单纯的技术。以下的步骤只是一些常规的做法。
目标
架构方向
第一步
1、基础必备:至少看过2本语言基础书和一本领域技术书。
2、部分参与项目1-2个。
所需时间:3-12个月
第二步
1、行业知识领悟、扩展相关应用知识。
2、完整参与项目1-2个。
3、可以指导新人完成工作。
所需时间:6-12个月
第三步生涯设计
1、深刻理解面对对象知识。熟悉常用架构,对公司采用的架构能提出改善意见。
2、参与需求讨论并能提出简化方案。
3、能为决策提出一些建议。
第四步
1、能够对整体需求方案做出精确描述。
2、运用一种架构对项目、产品进行设计。
3、评估项目风险、以及预留方案。
4、实现核心组件、技术难关。
5、行业技术指导。
第五步
艺术领域
管理方向
第一步
1、学习常用项目管理工具。
2、学会人际交往、协助项目管理。
3、和三教九流交朋友学会喝酒。
第二步
1、熟练运用一种项目管理工具。
2、能采用非技术手段实现需求(不用写代码的)
3、了解行业动向。
上表中第一步、第二步是基础阶段,都可以在制定
的时间内明确的达到目标。当你进入第三步的时候,应该就有点主要开发人员或管理助理的意思。等到第四步的时候就应该上位,如果一直不上位也很难发展。至于怎么上位,也许还得学习一些其他方面的知识。后两步都跟具体的成长环境和个人领悟相关,更多地是需要你学习本行业的知识,然后运用你所学到的技能将他用软件的形式表述,具体的做法也只有到自己领悟了。到了最后就达到了艺术的领域。我的上图给出的一些知识点,关于企业级应用开发说的比较多一点。这些也最多只能让你达到第3步,如果和你所从事的领域一点不沾边,你需要针对自己所从事的行业,列出能解决自己行业需求的技能,划出主次,针对不同的步骤,找出重点学习的知识点。
和人相处、与人沟通是当中隐含的,但非常重要的一个因素,只有掌握了这一点,才有可能达到艺术的领域。
最后还是强调那句话,能够解决问题才是王道。
二、树立自己的品牌形象
这一点必须是在你经历了一定的磨练之后再能够进展,至少你应该在原先的企业内已经完成了前三步的目标。已经积累了很多的行业经验。
如果你从开始就考虑要自己干,就要从上述表格第一步的时候开始准备。要将自己本身就看做是一个品牌。在和客户、和同行、和老板沟通的时候要处处注意维护你的形象。即使你没有任何产品,你的名字就是最好的产品,把自己推销出去。很多时候客户买你的产品不是因为你们的产品有多么的好,而是认可你的公司,或者是认可你们老板,或者单纯的喜欢你。所以一定要培养自己的行业名气,最重要的是合作机会。说不定就因为某个客户的一个单子,你就起来了。
一旦你树立了自己的形象,你还需要一个属于你自己的团队。得要有一些人愿意跟着你干。你需要一个很强的可以搞业务的伙伴,也后可能你从此再没机会写代码了。有更重要的事情等着你去做。
程序员的职业规划分享
程序员的职业规划分享。
1. 稳定成熟的技术还是未成熟的技术
无论哪种选择技术,最终的目的是产生利润。
2. 供应和需求
善于发现市场上技术的不平衡,找到外包公司无能为力的工作(高要求)。
3. 只会编程是不够的
仔细思考在哪个商业领域投入时间。
软件工程师不能只会开发软件,应该要成为这个业务领域的专家。
你的行业经历应该成为你的重要才能。
有机会多与公司行业内人士接触,选择一本与你公司行业有关的杂志,找一个行业网站。
只有了解了一个行业后,你才能创造性地有所建树。
学习行业是如何运转的,了解一些财务基本知识,推荐一本商业教程: The Ten-Day MBA。
4. 在思维上投资
要学会抓住机遇。
多学习新的技术,编程语言,可以改变你的思维方式。
5. 不要听从父母
在职业道路上,需要一些有目的性的冒险.不要让恐惧征服了你.跳槽可以让你从各个角度了解这个行业。
如果工作中没有感到乐趣,就不可能出色地工作。
6. 做一名通才
你的技术水平应该超越技术平台。
经常学习一些新技术。
7. 成为一名专家
不仅应该会处理高端抽象,同时也应该了解实现高端抽象的低端细节。
8. 切忌孤注一掷
不要把自己的职业发展完全依赖于一家技术公司。
9. 热爱它,不然离开它
一门技术或者一个商业领域可能使你感到兴奋,相反,它们也可能拖累了你.想想自己到底适合什么。
找一份自己真正有激情去做的工作。
第2章 在产品上投资
10. 学习钓鱼
要了解 如何和为什么。
要主动问,不要等着别人来告诉你。
11. 寻找良师
程序员生涯之我见 找到自己的兴趣所在[1]
编程只是程序员工作的一小部分,而当你能对整个行业能有一个全盘的了解,你自然会找到自己的兴趣所在。
在海外有很多中国人在从事程序员这个职业。我认识很多这样的朋友,发现许多人并不快乐,只是将这个工作当成养家糊口的工具。还有许多人工作努力而不能入门。我曾经在很长一段时间内也有过困惑,但最后终于走了出来。在这里谈谈自己的看法,希望对大家有一些启发。
俗话说兴趣是最好的老师.这话很有道理,但运用在事业上往往并不是这么一回事。在学生时代你可以追随兴趣天马行空,为未来作各种各样的设想。坚韧不拔而又有些运气的在后学生时代仍可在预设的道路上跋涉前进,甚至一帆风顺。而绝大多数同仁们则在生活所伏下的各种小圈套中纷纷落马,有的痛苦挣扎,有的怨天尤人,还有的则既来之,则安之,以失败者的心态接受生活的安排。
这些为生活所改变的同仁们的共同点是不再(敢或愿)提对原先事业的兴趣了,如果曾经有过的话。当然,兴趣是会变化的。但因生活改变而生的新的兴趣往往难以长久,而人生苦短,又经得起几次改变呢?
和其它许多职业一样,从事程序员职业的可分成三种人:入门的,不想入门的,和想入门而没有入门的。我对入门的定义是:喜欢这个职业并且有持之以恒的目标和努力。
入门的是极少数。如果一个程序员一直在从事这个职业,而且热爱并愿为之终老,我想他一定是幸福的。任何职业其实都是这样。我所在的公司有个年轻的老美,是负责三十多个程序员(包括我)的Software Architect,为人朴实而性格腼腆,但他对职业热爱的单纯连我都嫉妒得要命。他好像可以不食人间烟火,可以没有任何爱好(他其实一年要度好几次假的,但全是老婆安排,当然也参加公司活动),但对几年前写的代码记得清清楚楚。他没有可炫耀的学历(服兵役间在一家小学校读的计算机本科)和经历(因为太年轻),在任何场合都总是腼腆地笑着(我将他研究了很久,发现他实在本性如此),毫不起眼,但我知道,他是被造化所祝福的。他可以一直思考一个问题,在半夜起来用VPN连上公司网络修改一个bug.我遇到过不少优秀的程序员,就没他这么纯的。
不想入门的程序员可能是这三种人中比例最高的。女的居多,家庭负担重的居多,思想活跃的居多。程序员职业为男性所主宰是一个事实。女孩子结婚后兴趣大多都变了,程序员工作辛苦,责任大,也就没什么吸引力了。很多程序员聪明而思想活跃,却不愿意喜欢这个职业。有的一直在琢磨怎么开自己的公司,有的天天研究炒股,还有的只想好好保住这个工作,完成分配任务了事。究其原因,一是将人生看得太透了,觉得程序员工作只是衣食父母;一是认为编程太简单,没啥好投入的;还有就是看不到出路,当一辈子程序员划不来。人各有志。
对一些人来说,程序员只是人生经历的一部分,他们有自己所追求的目标。虽说这两年的IT不象五年前那么火热,但仍到处是机会,很多人通过程序员的工作进入IT而寻找机会。但对那些可能长久从事程序员工作的人来说,不入门实在太辜负了上天赐予的聪明才智。在美国的这些年,我认识了许多转行做程序员并做得不错的大陆来的朋友。附近一家老美的公司,软件研发部门中大陆来美读研毕业后留下来的有二十来人,多半是国内名校本科毕业的。这二十来人没有一个本科或博士是读计算机的,现在水平都很高。我用这个例子是想说明程序员这个队伍的素质是多么优秀,理应做出点事来。
程序员生涯之我见 找到自己的兴趣所在[2]
在现实生活中许多人由于缺少机会而不能成为程序员。不少人是半路出家,而人过而立之年,要想的,要考虑的东西多了:家庭,孩子,健康,股票,老人,房子,车子,地位有一位朋友,国内名牌大学物理本科,来美国读了物理博士。他在博士期间喜欢上编程,上过计算机系的几门课。九八年博士毕业时计算机工作火热,就找了个程序员的工作,从网页做起。我看得出他是很想做一个优秀的程序员。这些年我们一直保持联系。可惜的是他为生活所迫,年年在找工作(他一直做的是合同工,收入会高些,家里上有老,下有小).而博士学位在很多时候都是over qualify(资历过高).这两年经济不好,更是动不动被解雇。最近他终于找到了一份稳定的工作--在银行里做全职的DBA(数据库管理员).他人显得老了,语气也变了,只求有一份安稳的工作。他对编程的爱好依旧,但始终处于外围阶段,不是网页编程,就是DBA,只有业余时间学习一些。NET.还有一次,在2003年,Job market正不好。我参加休斯敦中国人西区教会组织的Job Fair,目的是让教会里的人将工作机会互通有无。我当时因为朋友邀请去看了看。参加的人基本上全是在做或找程序员工作的。好几个年龄相当,还没找到工作的在和我聊起来时听说我是国内计算机系本科毕业的,一直在做程序员,都很踊跃,要和我讨论一些问题,并留下电子邮件地址。看到他们羡慕的神情,当时我还没觉得什么,可现在每想到此,都有些震撼。很多人如果得到了机会可能会成为很好的程序员。然而世事往往如此:得到的人不珍惜,珍惜的人得不到。
想入门而没有入门的有很多:学有专长,由于各种各样的原因做上了程序员,做长了发现也许要做很久,于是试图研究并喜欢它,却发现这很难。难就难在看不清自己的方向。我认识不少程序员,工作很努力,有抱负,业余时间也学习,考证书,可是方向换来换去,今天学Java,明天学。NET,后天又打算考 MBA,到outsourcing的消息一传来,又灰心丧气。究其原因,数理化和许多其它的工程职业都已成型,研究方向明确,很多人通过学习会入迷而入门,知道自己的奋斗目标。软件工程行业才只有几十年的历史,作为一门科学还远不成熟,不能给程序员工作以明确指导。Microsoft的Visual Studio以及现在的。NET在大大提高编程效率的同时,也使得编程变得前所未有的容易。仅仅在编程上钻研不仅难以入门,而且在日新月异的技术面前会产生光阴易逝的困惑。
在美国,很多中国人去教会,而且其中不少成了忠实的信徒。我周围有不少朋友如此,所以由他们牵线参加了一些中国人教会的活动。我问他们信教后最大的感受是什么,答:平安喜乐。看得出真正的信徒是蒙福的。这是我所向往的生活。但我至今还没有信教,因为我在没有参加教会活动前早也有过那种感受。我知道信教不是唯一的途径,对不同的人会有不同的方式。早在春秋时代的孔子说过朝闻道,夕死可矣.这里的道,我相信和真正的信徒的信仰是殊路同归。而我们人生,不管是从事什么职业,能闻道,也就夕死可矣.所以我一直在寻找在程序员这个职业里的道,也就是入门
一日我读到了冯友兰先生的《中国哲学简史》,在网上广泛流传的电子版本。如获至宝。我第一次知道了原来我们的哲学家们也在研究这个道.不过他们研究的是与职业无关的,更为广泛意义上的为人之道。在书中,冯先生提到有各种各样的人,每种人都可能达到那种人最高的成就;而对所有的人来说,他们都可以达作为一个人最高的成就,为圣人,为领悟道的人,为哲学的人。而中国哲学所研究的就是怎样可以成为一个圣人,达到天人合一。在书的最后他指出,中国人可以不信教的理由是我们有自己的哲学,我们不需要信仰,因为我们是哲学的。我至今深表赞同。基督教义让信徒体会平安喜乐,只需无条件接受即可。中国哲学则需要你思考去体会。两者的功用有异曲同工之妙。
三百六十行,行行出状元。无论一个人从事何种职业,都可以在工作中加深自己对人生的理解,都可以在对事业的探索中去领悟这个天人合一。我一直相信,入门的人是得道的,无论他的天人合一是来自人的本性,还是信仰或哲学。在程序员这个职业里感受这个道,不同的人会有不同的理解,得由自己来体会。程序员不妨一读Fred Brooks的The Mythical Man-Month一书。作者是大师级人物,将软件工程的各个方向深入浅出地描述一遍。如果你已有几年在公司里当程序员的经验,读后或许会有拨云见日的感觉。其实我在美国读研时也上过软件工程一课,真没学到些什么,所以一直忽略了这门知识。现在计算机教育仍需要改善,有些课程设置并不合理,无论是国内和国外。像软件工程课,给没有几年程序员经历的人来说只会是纸上谈兵,而对有经验的人却往往是对症下药,醍醐灌顶。编程只是程序员工作的一小部分,而当你能对整个行业能有一个全盘的了解,你自然会找到自己的兴趣所在。
当你找到兴趣所在,无论是中国的哲学和智慧,对教的信仰,或是你内心深处对世界的体会,都会给你以信心和指导,不再会有疑惑。
程序员的职业规划就像软件工程
电信、银行等行业一直是许多人非常向往的工作单位,清差厚禄,旱涝保收,陈皓却不以此为然。所以当记者采访他的时候,他连用了两个最字来形容他离开银行的成就感。
陈皓毕业后的前两年就职于云南省工商银行,从事银行电信内全国性业务系统开发。后来在全球最大的网格计算/分布式平台软件公司从事研发工作,熟悉Unix系统以及C/C++语言,擅长大型系统软件需求分析、设计、架构、实施和维护,目前是某全球金融信息数据处理公司的技术主管。
随波逐流
回想当初,陈皓颇有感慨。还在大三的时候,他就被系里优先推荐给了工行。那时他参与了系上的一个项目(用HTML+Java开发一个在线教学课件),由于当时国内根本买不到HTML和Java的书,而学校也没有上网条件,所以关于HTML和Java对系里的老师都是比较新的东西,当开发完成后,系里对此评价比较高。因此就在大三下学期把陈皓推荐给了工行。
由于早早地被银行预定,所以陈皓的大四生活很自由,整个一年他基本是在一家很小的软件公司打工度过的。就是在那家公司工作的经历,让陈皓后来产生了离开银行的念头。
那家公司主要做些MIS系统,陈皓不仅获得了一定的实际工作经验和能力的锻炼,还习惯了软件公司高节奏、快学习、充满挑战的环境和氛围。这造成了他毕业后到银行工作时极度的不适应效率低下,工作毫无激情,工作当中充满了相当复杂的人际关系和政治斗争。
最主要的是,由于初到银行,很多技术和产品从未见过,而主要实施却由外面公司来完成,银行自己内部中有经验的人又不愿意与人分享知识。虽然可以拿很多红包,整天也很清闲,不是看报纸就是打游戏,但陈皓感觉到那并不是自己喜欢的工作,没有任何激情和斗志可言。和大四时在那个软件公司中的技术氛围相比,完全就是天壤之别。
所以在银行工作的这两年,陈皓天天都在彷徨和思想斗争,因为没有自己的职业规划,所以,浪费了至少两年的时间。最后,陈皓打定信念,决意离开去寻找自己的道路。
因为我是在一个相对比较闭塞的城市(昆明),所以,我要离开银行的决定遭到了父母、同学、朋友、同事,几乎是身边所有人的反对。但最终,我还是一意孤行离开了银行,远走他乡到上海这座大城市去寻找自己的人生道路。
程序员陈皓
从此,我走上了一条不可回头,并和以前完完全全不一样的道路。从国企到民企再到外企,从打杂到程序员再到高级程序员到team leader到技术主管,从小酒店MIS到企业OA到全国性的大系统到世界领先的分布式计算平台集群软件,若干年过去了,经历了高速的发展和获得了很多不同的经历,但唯有当时选择离开银行这件事情让我至今都为之兴奋。迄今为止,这是我自己觉得最最有成就感的事情。
正如陈皓所说,也许,最让一个人感到最有成就的事情,不是他做成了什么,而是他选择了什么。
认识自己
多年打拼后,陈皓虽已是技术主管,但走的那些弯路,浪费的两年时间,一路中的心酸让他明白了很多道理。今天,我对许多刚上路的朋友都会说,人生的规则很重要,从上大学时就要好好规划,这对国人来说尤其重要。因为对于国人来说,人生的头20年都是被别人规划的,导致了自己根本不会给自己做规划。这点是相当危险的。
人生短暂,属于自己黄金的时间不多,如果把太多的时间浪费在寻找道路和方向上,很有可能会导致一事无成,要及早确定自己的规划,然后照着这个规划坚定不移的去执行。陈皓认为,做规划时最重要的是两个方面:一是清楚地认识自己的能力、优势和性格;二是确定自己的专业和想从事的行业。只有在确定这两方面后,才能做出自己的职业规划。
两方面看起来很简单,但认识自己并不是一件容易的事情。陈皓认为应当从下面十五个方面审视和认识自己,帮助自己确立人生规划:A)所掌握的知识,B)问题的解决能力、判断能力和分析能力,C)对待困难的心态,D)团队合作能力,E)表达能力和语言组织能力,F)创造和创新能力,G)沟通能力,H)自己的性格内向还是外向,I)是否有坚韧不拔的专研精神,J)自己的弱点和性格上的缺陷,K)学习能力,获得知识的能力,L)领导组织能力,M)目前自己能够进入的企业,N)目前自己在社会中的地位,O)目前自己的竞争实力。
职业规划就像软件工程
确定了自己的行业和专业领域后,接下来的事情应该是:1)努力掌握这个行业的知识,2)用最短的时间了解这个专业和行业更为具体的各个子方向。然后在实际过程中再认识自己。比如,选择了计算机行业,应该尽量地尝试软件、硬件、网络、娱乐、媒体等计算机行业不同方向的工作,如果从事软件,又分Web、系统、项目、ERP、CRM、数据库、嵌入式,在工种上又分开发、测试、技术支持、流程管理,项目管理,系统架构,售前,售后。当然,我们并不需要去尝试所有的工作或工种才能知道自己适合什么,我们完全可以向从事不同方向的人咨询并结合自我认识来做出判断。
在这个过程中,迷茫的摸索可能是很难避免的。能够及时得到前人的指点可能会是一个捷径,征求前人的建议可以起到参考的作用,快速原型(快速尝试)或许也是好的办法。因为人与人不同,他人的路并不一定适合自己,适合自己的路还要自己去规划,别人是帮不上忙的。
要经常性地跳出自己再来看自己,客观地分析自己的优势和劣势。让自己和别人掂量掂量自己到底几斤几两,了解到自己的长处和特点,然后才能知道自己适合做怎么样的事和并调整自己的职业路线,这是一个肯定到否定再到肯定螺旋上升的进化过程。当度过对自己对社会的陌生期后,才有谈得上对自己人生和职业的规划。
个人的职业规划就像软件工程。我们都知道软件项目最大的敌人是需求的不明确和需求的大面积变更,同样,在个人的职业规划中,自我需求的不明确和需求的变更也是非常危险的,尤其是在职业计划实施了四五年后需求的变动和改变。只有需求确定以后,才谈得上个人的职业设计的HLD(High Level Design)和LLD(Low Leave Design),以及具体实现。此后随着自身的日益成熟,可以随时为自己的Bug打补丁(Patch)改进自己的职业生涯的设计和实施细则(Enhancement),并为自己加上更多更强的能力(New Feature Requirement)。最终达到软件版本的升级。
职场智慧之程序员的职业规划[1]
大多数的程序员,对自己的职业发展方向都是模糊的。不做程序员了还能做什么,很多人都不知道。下面,笔者与大家分享几个观点。
选择比能力重要
通常,作为程序员,一般会有以下几种职业走向。
走技术:技术高手、技术专家、软件架构师。
走管理:项目经理、部门经理、技术总监。
甚至,从事销售顾问、培训讲师、自己创业都是一种可能。
其实,这些职业当中的每一种,都有一条非常宽敞的职业发展之路,关键在于作为还是一个程序员的你,将会做出什么样的选择,哪怕我们想从事软件产品的市场和销售工作,带着对技术的理解,也必将做出自己独特的一面。
但无论如何,我们都要做出一个选择,给自己定一个目标。目标对人生有着巨大的导向作用。成功,在事业起步的时候仅仅是一种选择,你选择什么样的目标,就会有什么样的人生。不少朋友最大的痛苦就是不知道自己适合做什么,该干什么,该走什么路,不满足于现状又不得不沉沦于现实。
所以,先认清正确的结果,根据正确的结果去设计你的过程。当一个人具有明确的目标时,就会对有助于实现目标的蛛丝马迹都特别敏感,做事情相应也就会很有目的性,而不是稀里糊涂的。所以,就容易到达自己的目的。如果没有目标,就算是天上真有神仙,神仙也不知道该给你什么。
做正确的事情,永远比正确地做事更重要!
以上《程序员职业规划之我见》一文,由编辑精心撰写而成,希望对您的职业规划有所帮助,更多精彩请访问“程序员职业规划”专题!