在海外有很多中国人在从事程序员这个职业。我认识很多这样的朋友,发现许多人并不快乐,只是将这个工作当成养家糊口的工具。还有许多人工作努力而不能入门。我曾经在很长一段时间内也有过困惑,但最后终于走了出来。在这里谈谈自己的看法,希望对大家有一些启发。
俗话说“兴趣是最好的老师”。这话很有道理,但运用在事业上往往并不是这么一回事。在学生时代你可以追随兴趣天马行空,为未来作各种各样的设想。坚韧不拔而又有些运气的在后学生时代仍可在预设的道路上跋涉前进,甚至一帆风顺。而绝大多数同仁们则在生活所伏下的各种小圈套中纷纷落马,有的痛苦挣扎,有的怨天尤人,还有的则既来之,则安之,以失败者的心态接受生活的安排。
这些为生活所改变的同仁们的共同点是不再(敢或愿)提对原先事业的兴趣了,如果曾经有过的话。当然,兴趣是会变化的。但因生活改变而生的新的兴趣往往难以长久,而人生苦短,又经得起几次改变呢?
和其它许多职业一样,从事程序员职业的可分成三种人:入门的,不想入门的,和想入门而没有入门的。我对入门的定义是:喜欢这个职业并且有持之以恒的目标和努力。
入门的是极少数。如果一个程序员一直在从事这个职业,而且热爱并愿为之终老,我想他一定是幸福的。任何职业其实都是这样。我所在的公司有个年轻的老美,是负责三十多个程序员(包括我)的Software Architect,为人朴实而性格腼腆,但他对职业热爱的单纯连我都嫉妒得要命。他好像可以不食人间烟火,可以没有任何爱好(他其实一年要度好几次假的,但全是老婆安排,当然也参加公司活动),但对几年前写的代码记得清清楚楚。他没有可炫耀的学历(服兵役间在一家小学校读的计算机本科)和经历(因为太年轻),在任何场合都总是腼腆地笑着(我将他研究了很久,发现他实在本性如此),毫不起眼,但我知道,他是被造化所祝福的。他可以一直思考一个问题,在半夜起来用VPN连上公司网络修改一个bug。我遇到过不少优秀的程序员,就没他这么纯的。
不想入门的程序员可能是这三种人中比例最高的。女的居多,家庭负担重的居多,思想活跃的居多。程序员职业为男性所主宰是一个事实。女孩子结婚后兴趣大多都变了,程序员工作辛苦,责任大,也就没什么吸引力了。很多程序员聪明而思想活跃,却不愿意喜欢这个职业。有的一直在琢磨怎么开自己的公司,有的天天研究炒股,还有的只想好好保住这个工作,完成分配任务了事。究其原因,一是将人生看得太“透”了,觉得程序员工作只是衣食父母;一是认为编程太简单,没啥好投入的;还有就是看不到出路,当一辈子程序员划不来。人各有志。
对一些人来说,程序员只是人生经历的一部分,他们有自己所追求的目标。虽说这两年的IT不象五年前那么火热,但仍到处是机会,很多人通过程序员的工作进入IT而寻找机会。但对那些可能长久从事程序员工作的人来说,不入门实在太辜负了上天赐予的聪明才智。在美国的这些年,我认识了许多转行做程序员并做得不错的大陆来的朋友。附近一家老美的公司,软件研发部门中大陆来美读研毕业后留下来的有二十来人,多半是国内名校本科毕业的。这二十来人没有一个本科或博士是读计算机的,现在水平都很高。我用这个例子是想说明程序员这个队伍的素质是多么优秀,理应做出点事来。
在现实生活中许多人由于缺少机会而不能成为程序员。不少人是半路出家,而人过而立之年,要想的,要考虑的东西多了:家庭,孩子,健康,股票,老人,房子,车子,地位……有一位朋友,国内名牌大学物理本科,来美国读了物理博士。他在博士期间喜欢上编程,上过计算机系的几门课。九八年博士毕业时计算机工作火热,就找了个程序员的工作,从网页做起。我看得出他是很想做一个优秀的程序员。这些年我们一直保持联系。可惜的是他为生活所迫,年年在找工作(他一直做的是合同工,收入会高些,家里上有老,下有小)。而博士学位在很多时候都是over qualify(资历过高)。这两年经济不好,更是动不动被解雇。最近他终于找到了一份稳定的工作——在银行里做全职的DBA(数据库管理员)。他人显得老了,语气也变了,只求有一份安稳的工作。他对编程的爱好依旧,但始终处于外围阶段,不是网页编程,就是DBA,只有业余时间学习一些.NET。还有一次,在2003年,Job market正不好。我参加休斯敦中国人西区教会组织的Job Fair,目的是让教会里的人将工作机会互通有无。我当时因为朋友邀请去看了看。参加的人基本上全是在做或找程序员工作的。好几个年龄相当,还没找到工作的在和我聊起来时听说我是国内计算机系本科毕业的,一直在做程序员,都很踊跃,要和我讨论一些问题,并留下电子邮件地址。看到他们羡慕的神情,当时我还没觉得什么,可现在每想到此,都有些震撼。很多人如果得到了机会可能会成为很好的程序员。然而世事往往如此:得到的人不珍惜,珍惜的人得不到。
想入门而没有入门的有很多:学有专长,由于各种各样的原因做上了程序员,做长了发现也许要做很久,于是试图研究并喜欢它,却发现这很难。难就难在看不清自己的方向。我认识不少程序员,工作很努力,有抱负,业余时间也学习,考证书,可是方向换来换去,今天学Java,明天学.NET,后天又打算考MBA,到outsourcing的消息一传来,又灰心丧气。究其原因,数理化和许多其它的工程职业都已成型,研究方向明确,很多人通过学习会入迷而入门,知道自己的奋斗目标。软件工程行业才只有几十年的历史,作为一门科学还远不成熟,不能给程序员工作以明确指导。Microsoft的Visual Studio以及现在的.NET在大大提高编程效率的同时,也使得编程变得前所未有的容易。仅仅在编程上钻研不仅难以入门,而且在日新月异的技术面前会产生光阴易逝的困惑。
在美国,很多中国人去教会,而且其中不少成了忠实的信徒。我周围有不少朋友如此,所以由他们牵线参加了一些中国人教会的活动。我问他们信教后最大的感受是什么,答:平安喜乐。看得出真正的信徒是蒙福的。这是我所向往的生活。但我至今还没有信教,因为我在没有参加教会活动前早也有过那种感受。我知道信教不是唯一的途径,对不同的人会有不同的方式。早在春秋时代的孔子说过“朝闻道,夕死可矣”。这里的“道”,我相信和真正的信徒的信仰是殊路同归。而我们人生,不管是从事什么职业,能“闻道”,也就“夕死可矣”。所以我一直在寻找在程序员这个职业里的“道”,也就是“入门”。
一日我读到了冯友兰先生的《中国哲学简史》,在网上广泛流传的电子版本。如获至宝。我第一次知道了原来我们的哲学家们也在研究这个“道”。不过他们研究的是与职业无关的,更为广泛意义上的为人之道。在书中,冯先生提到有各种各样的人,每种人都可能达到那种人最高的成就;而对所有的人来说,他们都可以达作为一个人最高的成就,为“圣人”,为领悟“道”的人,为哲学的人。而中国哲学所研究的就是怎样可以成为一个“圣人”,达到天人合一。在书的最后他指出,中国人可以不信教的理由是我们有自己的哲学,我们不需要信仰,因为我们是哲学的。我至今深表赞同。基督教义让信徒体会平安喜乐,只需无条件接受即可。中国哲学则需要你思考去体会。两者的功用有异曲同工之妙。
三百六十行,行行出状元。无论一个人从事何种职业,都可以在工作中加深自己对人生的理解,都可以在对事业的探索中去领悟这个天人合一。我一直相信,入门的人是得道的,无论他的天人合一是来自人的本性,还是信仰或哲学。在程序员这个职业里感受这个“道”,不同的人会有不同的理解,得由自己来体会。程序员不妨一读Fred Brooks的The Mythical Man-Month一书。作者是大师级人物,将软件工程的各个方向深入浅出地描述一遍。如果你已有几年在公司里当程序员的经验,读后或许会有拨云见日的感觉。其实我在美国读研时也上过软件工程一课,真没学到些什么,所以一直忽略了这门知识。现在计算机教育仍需要改善,有些课程设置并不合理,无论是国内和国外。像软件工程课,给没有几年程序员经历的人来说只会是纸上谈兵,而对有经验的人却往往是对症下药,醍醐灌顶。编程只是程序员工作的一小部分,而当你能对整个行业能有一个全盘的了解,你自然会找到自己的兴趣所在。
当你找到兴趣所在,无论是中国的哲学和智慧,对教的信仰,或是你内心深处对世界的体会,都会给你以信心和指导,不再会有疑惑。
分享到:
相关推荐
《我编程,我快乐:程序员职业规划之道》这本书聚焦于软件开发者如何在职业生涯中找到乐趣、实现个人价值和持续成长。作为一个程序员,你的工作不仅仅是编写代码,而是通过代码创造价值,解决问题,甚至改变世界。...
### 程序员如何实现职业生涯的“突围” 在当今社会,信息技术(IT)行业的吸引力对众多渴望技术成就和个人发展的年轻人而言不可小觑。然而,随着时间的推移,这些年轻的程序员们逐渐意识到,这个职业道路并不像起初...
### 程序员的发展方向 在IT行业中,程序员作为技术的核心力量,其职业发展路径多样且具有广阔的空间。本文将根据给定的部分内容,详细阐述程序员可能的发展方向及其...关键在于找到自己的热情所在,并为之不懈努力。
《C#程序员职业规划:构建你的IT生涯》 在当今快速发展的信息技术领域,作为一名C#程序员,拥有清晰的职业规划不仅能够帮助你把握住行业趋势,还能确保你...愿每一位C#程序员都能在这条道路上找到属于自己的光辉时刻。
通过不断克服技术难题、阅读新书、与他人交流和深入了解行业动态,程序员可以不断提升自己的技术水平。精通一门技术不仅仅是掌握技术本身,更重要的是学习和研究的方法,以便于触类旁通,适应技术的快速变化。 对于...
1.兴趣: Java 程序员应了解自己的兴趣所在,哪些知识或技术能让自己感到快乐和成就感。 2.性格:不同的工作适合不同性格的人, Java 程序员应该了解自己的性格特点,选择合适的职业方向。 3.优势和特长: Java ...
程序员需要设定明确的职业目标,了解自己的兴趣所在,以便在合适的时间做出转型或深入某一领域的决策。同时,书中可能还提到了如何建立个人品牌,通过开源贡献、撰写技术博客等方式提升行业影响力。 总的来说,...
- **核心观点**:良好的心理状态和有效的求职策略对于成功找到理想工作至关重要。 - **详细解读**: - 应届毕业生常面临求职过程中的焦虑和压力,保持积极向上的心态有助于克服困难。 - 明确自身优势并针对性地...
### 程序员生存定律 #### 一、引言 《程序员生存定律》是一部针对IT...通过不断学习、提升自我并适时调整职业规划,每位程序员都能找到最适合自己的发展道路,在这个充满机遇与挑战的行业中实现个人价值的最大化。
因此,学生们需要通过制定清晰的职业规划来提高自己的竞争力,找到更适合自己的工作机会和发展平台。 #### 三、确定发展方向 工作一两年的程序员需要明确自己的职业发展方向。常见的两条路径包括:一是成为资深技术...
1. **明确兴趣所在**:首先要确定自己为何对编程感兴趣。这可能源于对计算机游戏的热爱、对自动化和效率提升的追求,或者是对编程中解决问题的挑战感到兴奋。 2. **自学基础知识**:通过在线资源、书籍或编程社区...
根据给定的信息,我们可以推断出文章主要讨论的是程序员成长的不同阶段或者说“九重境界”。虽然提供的内容较为简略且存在非中文字符,但通过标题、描述和部分可辨认的文字,可以尝试构建一个关于程序员成长阶段的...
- **要点**:明确自己的职业锚(即长期职业兴趣所在)对于将职业转变为事业至关重要。 - **解读**:了解自己的长期职业兴趣有助于更好地规划未来发展方向。 #### 技巧8:把握每次机会 - **要点**:在职业发展的每个...
### 程序员职业发展的多元化路径 #### 一、引言 随着信息技术行业的迅猛发展,程序员群体不断扩大,他们的职业发展路径也成为业界关注的焦点...希望每位程序员都能找到适合自己的发展之路,在信息技术领域不断前行。
Java工程师,不仅仅是编写代码的程序员,他们是综合性的技术专家,负责理解业务需求,设计并实现解决方案。他们在项目中扮演着关键角色,包括需求调研、软件开发、系统优化以及技术选型。他们需要不断学习新知识,...
### 知识点提炼 #### 1. 职场准备与个人成长 - **大学生活的价值**:书中强调了大学期间完成一个满意的项目对于个人技能提升的...通过阅读本书,读者可以更好地规划自己的职业生涯路径,为未来的成功打下坚实的基础。
- **职业转型:** 对于想要转换职业轨道的人来说,明确自己的兴趣所在,并为之做好充分准备是非常重要的。 #### 九、职场政治 - **处理复杂关系:** 职场中不可避免会遇到复杂的人际关系,学会如何处理这些关系...