三十岁的程序员,应该如何规划以后的人生?

三十岁的程序员,应该如何规划以后的人生?,第1张

程序员的三十岁,走入职业生涯的高峰期,技术胜人一筹,经验积累的比别人多。作为腊渗亩一名合格的码农,加班肯定少不了,而三十岁的程序员,年龄带来的痛非常明显,节奏跟不上,思维跟不上。码农工作中最经常的是加班了,然后还有家庭方面的琐事,很少有自己的时间。于是,年龄高了,思维也会固化,跟年轻程序员比起来,差距还是有些大。另外,冒险精神也没了,什么都不敢尝试,喜欢按部就班也很致命。走管理,其实是很多三十岁左右程序员的选喊宴择,如果有意于走这个轮森方向,那么,做好准备。首先要提升管理能力,程序员这个岗位做的是技术,对于管理方面还不够有心得,需要多去了解。

程序员一定要除了基本的道行修炼外。更重要的是德行修炼。德行=合作能力或沟

通能力。对于规模大,生命周期长(特别是衍生生命周期长)的软件项目而言,德行更

重要。

德行的标准

软件开发离不开企业,企业的文化决定着程序员的行为规范,比较理想的企业文化

是:

沟通方式开放、自由、平等,个人长期发展和企业发展的有限度统一。这样的企业

文化,必然会造就具有长远眼光和冒险精神的将帅之才。

这方面的楷模是微软公司,该公司全球员工平均年龄只有28岁,无论在全球的哪家

公司,微软评判人才的标准都是相同的。挑选员工的第一标准是应聘者是否具有良好的

品德。微软认为,良好的品质是职业道德的基础。其次,看应聘者解决问题的能力如何

,在面对困难时是退缩,还是勇往直前,因为实际工作中常有新问题需要解决。第三,

要测试应聘者有没有快速学习的能力,日新月异的技术发展要求有快速学习能力。另外

,团队精神、责任心、工烂猛雹作热情、创新精神和独立工作能力都是必须的。

好的企业文化熏陶出来的程序员,必然是关注个人长远发展的职业精英,这样的程

序员必然会较早地设定自己的职业发展管道。比如:

管理序列:程序员->项目管理人员->中级管理人员->高级管理人员;

技术序列:程序员->高级程序员->需求分析师\\架构工程师\\质量管理;

市场序列:程序员->售前支持->销售;

与这样的个人职业发展管道相适应的个人技能是:

——软件基础理论扎实;

——系统分析与设计能力较强;

——具有熟练的系统开发、系统测试与系统维护技术和管理技能;

——较强的项目管理能力和交流与组织协调能力;

——在企业既能适应软件产品研发,又能适应项目管理岗位;

——具备独立工作能力和创新意识。

在项目开发过程中,有效沟通非常重要,沟通的形式多种多样,除了常见的几种方

式外,下面讲几种比较有特点的沟通方式:

* 历史和现在

如何最大程度地挖掘过去成果的价值,需要讲过去的成果(算法,code,设计思想等

)进行再组织,使之可以被快速检索。

* 标准化

“最好的沟通是没有沟通”,通过标准化的技术手段,使个人的输出可以被他人非

常容易地了解,这样可以避免沟通带来的效率低下。

* 技术一致性

软件技术的发展,使得程序员这个职业需要不断细分,这带来的最大问题是不同技

术间的互通问题。为此,在程序开发过程中,需要不断进行的技术预研变得越来越重要

。并且,只要满足功能需求,就采用最简单的实现技术。

* 简单性

程序规模变得越来越庞大的同时,修正Bug的代价程指数级增长。因此,饥帆尽量少用比

较容易犯错误的编程技术(比如C语言的指针),尽量采用简单(牺牲效率)的算法,接

口间尽量少一些“合并点”,将是非常有价值的。

不良的德行

尽管国内程序员有一些普遍的优点:比如有雄心壮志,面对困难时比较坚毅,理论

基础、尤其是数学功底扎实,编程能力强,吃苦耐劳、讲纪律、讲服从等。

而缺点也是突出的:创新精神不足,做事缺乏主动,独立从事研究的能力弱,对很

多事没有主见,而且有想法不直接说,对新知识了解不够,不善于与人交流,缺乏合作

精神。

还有一些缺点:不诚实——表现在答应了的事不去做;贪小便宜——用公司设备办

私事;不够踏实——急功近利,擅长做表面文章。

这些不良德行在实际的程序开发中表现如下:

* 滥用不变量,以自己模块调试通过为最高目的

大家知道,程序中到处存在着“瓶颈”,这些瓶颈是造成程序运行时不稳定的最重

要的因素之一。比方说,在模块接口间定义了一个用常数开辟的内存空间。消除这些瓶

颈要从几个方面入手:

——采用技术手段减少不变量的使用,不要给别人造成麻烦;

——集中使用不变量,方便自己的上司作出Bug修正决定;

——应用各种异常捕获机制,在不变量导致的异常出现点进行精确定位;

* 不尊重文档,契约意识淡薄

应该把文档看成法律合同,要认真书写,完全彻底地遵守。并且,一旦发现定义模

糊的地方,应该及时通报作者进行适当修正。

* 不写或少写知裂注释,小农思想严重

程序是共有的,模块是不能独活的,注释可以帮助测试人员和维护人员的工作,并

且,特别利于软件重用,最大限度地延长模块的生命周期;

* 不关心他人的进度,个人利益高于以前

开发进度的平衡是一个项目成功的重要标志。个人的能力是不平衡的,每个人的工

作量也是不平衡的。关心他人的进度,并在适当时机施以援手,将最大程度地消除开发

进度中“人的瓶颈”。要知道:团队成功是个人成功的前提;

* 不借鉴他人的闪光点,偏重技术,忽视德行,难成大器

创新分精神创新和内容创新。有一个有趣的现象,大家大概都经历过,比如:A在他

负责的模块内用了一个算法,得到领导表扬;B就另外写一个算法,可能B的算法要好,

但,站在整个项目的角度看,B的行为是有害的,因为他损害了沟通的效率(领导要分别

看两个算法,测试员要策两种算法,维护人员就更苦了)。

企业的德行

IT界普遍认为国内IT教育在课程设置上存在不足,比如课程陈旧,学生的动手能力

差,缺乏实践经验。很多企业抱怨,学生到了企业后,不好用,企业不得不再培训一段

时间才能用,所以,很多企业不愿选择应届生,而喜欢从社会上招聘。实际上是这样吗

这实际上反映了国内软件企业的规模比较小,偏重只有较短生命周期的应用软件开

发,所以,这些企业在自身资源有限和发展定位上的“鼠目寸光”决定了他们对人才需

求的的急功近利。

实际上,培养刚从学校出来的大学生是最合适的人才选拔方式。学生刚刚踏上社会

,对职业的理解可以从0开始塑造,这样建立起来的团队特别整齐。这可以从每年跨国公

司的校园招聘会上得到证明。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12432589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存