- 浏览: 69211 次
- 性别:
- 来自: 沈阳
最近访客 更多访客>>
文章分类
最新评论
-
hexawing:
请问我怎样指定它去哪个服务器下载gem呢?之前默认的貌似不能用 ...
[转载]使用RubyGem -
bryanzk:
我说兄弟,你从豆瓣上直接全文copy我的内容,也要打个招呼吧? ...
[转载备份]Rails创始人DHH新作《Rework》读书笔记:“少!快!精!”
在中国,程序员不能超过35岁,似乎已经是不争的事实,软件开发工作就是青春饭,顶多靠毕业这十年的时间,超过这个年龄,要不成功跃身成为管理者,要不转行进入其他领域,好像再没有更好的选择,即使偶有继续坚持作开发的,也被看成另类一族。老外却不是这样,40,50岁仍然作开发工作的大有人在,甚至很多牛人,包括获得康柏最佳软件奖的Robber,仍在埋头作着他所喜欢的编码工作,为何如此差异。我仔细想了一下,特别是这一年参加了太多的技术培训,基本有了一些结论。
首先,国内软件开发工作的性质决定这一切,我们所作的产品开发,真正技术含量并不高,高等院校毕业的学生,经过几年的培训和实践,基本都能掌握这些技能,而我们现有产品开发设计水平有限,对于软件开发的理解还仅限于编码,完成功能这些基本的需求,产品进度是第一驱动力,特别是一些小公司,把快速开发出产品作为最高目标,软件设计质量差,很少考虑可维护性,可扩展性这些重要的软件质量属性,仅仅追求功能和进度,产品以最快的速度完成设计,编码,少有测试甚至没有测试,就直接交付给客户,在客户那里暴露出各种各样的问题出来,开发人员就开始不断得为客户解决这样那样的问题,软件做到最后,很多人都会陷入自己不断挖掘出来的陷阱里走不出来,步入在复杂的系统中查找BUG,解决BUG,增加功能,引入新的BUG,再解决BUG,这样永无休止的恶性循环中,从事的都是一些低级开发工作,对于软件开发的理解无法上升到更高的层次,每天都疲于救火和拼命打补丁,软件维护成本居高不小,即使最终摆脱了这样的厄运项目结束,下一次软件开发又是同样过程的重复,这些无休止的低级开发和维护工作,会耗光一个人所有的激情和精力,随着年龄的增大,热情和体力都在衰减,而这些工作,只要毕业生经过培训,同样可以胜任,有着廉价的,并且充满热情的毕业生作竞争,身心疲惫的老程序员必然面对更大的竞争压力,做到最后,连他们自己都会失去对软件开发的兴趣,甚至会产生厌倦的情绪,对于这样的快速开发模式,十年开发经验和五年开发经验有很大区别吗?干吗不使用更经济便宜的开发人员。
另一个原因,是我们中国人一向的官本位思想,开发人员始终处于一种很尴尬的境界,听起来从事的是高级技术工作,说起来也是以人为本,但是,有多少企业管理者真正重视和认可开发人员的,哪怕是硕士,博士,这些开发人员在大官,小官面前,都只是普通劳动者而已。程序员是一个没有未来的行业,哪怕资历再深,能力在强,也还是一个劳动者而已,只有当上领导,走上管理才是最终的出路,否则,薪水上不去,地位上不去,只能面对被淘汰的命运。
实际不然,之所以出现这种问题,是国内对软件开发的一种错误理解。如果软件开发仅仅是代码编写,查找BUG,可以说,那实在是一些低级的软件行为,做了十年的开发人员,确实不见得比作了3年的人更强多少,反正是简单重复的工作,工作3年的一样可以作,而且有更大的热情和精力。但是,应该跳出这个怪圈,走向更高的领域,对软件开发重新进行认识。要明白,软件开发要融入工程化的思想,要有高度的设计能力,关注更多的软件运行属性和设计质量属性,同样的系统,不同的软件人员会做出完全不同的软件,正规,高效的开发团队要比游击队开发团队不只高出几十倍。软件开发,不仅仅关注功能,性能,更应该去研究可维护性,可扩展性等质量属性,不仅仅只关注代码,而更要上升为设计,复用等。软件开发不仅仅是写出C语言的代码,单元测试,同行评审,培训与学习,这同样是开发人员基本的素质,也是提高软件质量的最基本手段。举例来说,单元测试做好了,就可以让开发效率大大提高,也能让软件的维护成本降下来。把开发人员解放出来。同行评审可以让开发人员之间更多的交流和沟通,在设计,编码阶段严格控制软件质量,培训则是提高自身技术水平,从理论上提升自己的最好方法。先前这些主要的质量行为都被忽略了,而这恰恰是走出低级开发的最好途径。同时,还有更高层次的设计开发,软件重构,模块化,系统构架,搭建统一软件平台,度量软件质量等等,有了重构,就会写出可读性好,可维护性好的软件,甚至因此提高自己的软件设计能力,减少出错的几率;模块化,让软件最大程度的实现复用,提高软件开发效率和开发质量。软件构架设计,从技术层次上最早决定了软件的命运,而这里又有太多的技术,设计模式,软件规划等,让软件开发从编码上升到设计的层次,搭建统一软件平台,是大产品,系列化开发的必然之路,对于软件质量的度量,会让我们的软件开发变得更加透明,清晰,让我们更清楚的把握到软件开发过程,从各个环节去控制软件质量,而不是仅仅凭着感性的认识到了最后才去补救。
以上这些知识,一个人,哪怕勤奋学习一辈子,也不可能完全具备所有的技能。35岁算什么,做到70岁都不晚。当然,你需要真正的热爱它,并且不断得学习和进修。所以说,软件开发人员,要作的事情太多了,软件实在是一个浩大的脑力工程,甚至会让人觉得这是一个投入/产出比最低的行业,因为要学习的知识实在太多了,每时每刻都要处于不断的学习和更新当中,呵呵,既然选择了,既然喜欢了,就投入进去,享乐于此了。最重要的是,我们自己能并且愿意去认识到这一点,跳出低级开发的怪圈,走向更高的层次
同时,要意识到,一个资深开发人员的作用绝不亚于一个管理人员,高明的企业应该给予相同的待遇,要把培养和储备高级技术人才作为高科技企业的重点发展方向,这样才能让企业在人才领域得到不断积累,资深开发人员才会带出高效的开发团队,从而开发出高质量,高效率的软件,让企业在不断激烈的竞争中取胜。要明白,不是每个人都适合或者乐于转向管理的,很多人就是适合做开发工作,他们可以走得更深入,成为专家,应该充分发挥出他们的能力,让整个团队高效运作起来。
所以说,开发人员,决不只是35岁,只要你愿意,可以作一生的开发,从中获得更多的快乐。
首先,国内软件开发工作的性质决定这一切,我们所作的产品开发,真正技术含量并不高,高等院校毕业的学生,经过几年的培训和实践,基本都能掌握这些技能,而我们现有产品开发设计水平有限,对于软件开发的理解还仅限于编码,完成功能这些基本的需求,产品进度是第一驱动力,特别是一些小公司,把快速开发出产品作为最高目标,软件设计质量差,很少考虑可维护性,可扩展性这些重要的软件质量属性,仅仅追求功能和进度,产品以最快的速度完成设计,编码,少有测试甚至没有测试,就直接交付给客户,在客户那里暴露出各种各样的问题出来,开发人员就开始不断得为客户解决这样那样的问题,软件做到最后,很多人都会陷入自己不断挖掘出来的陷阱里走不出来,步入在复杂的系统中查找BUG,解决BUG,增加功能,引入新的BUG,再解决BUG,这样永无休止的恶性循环中,从事的都是一些低级开发工作,对于软件开发的理解无法上升到更高的层次,每天都疲于救火和拼命打补丁,软件维护成本居高不小,即使最终摆脱了这样的厄运项目结束,下一次软件开发又是同样过程的重复,这些无休止的低级开发和维护工作,会耗光一个人所有的激情和精力,随着年龄的增大,热情和体力都在衰减,而这些工作,只要毕业生经过培训,同样可以胜任,有着廉价的,并且充满热情的毕业生作竞争,身心疲惫的老程序员必然面对更大的竞争压力,做到最后,连他们自己都会失去对软件开发的兴趣,甚至会产生厌倦的情绪,对于这样的快速开发模式,十年开发经验和五年开发经验有很大区别吗?干吗不使用更经济便宜的开发人员。
另一个原因,是我们中国人一向的官本位思想,开发人员始终处于一种很尴尬的境界,听起来从事的是高级技术工作,说起来也是以人为本,但是,有多少企业管理者真正重视和认可开发人员的,哪怕是硕士,博士,这些开发人员在大官,小官面前,都只是普通劳动者而已。程序员是一个没有未来的行业,哪怕资历再深,能力在强,也还是一个劳动者而已,只有当上领导,走上管理才是最终的出路,否则,薪水上不去,地位上不去,只能面对被淘汰的命运。
实际不然,之所以出现这种问题,是国内对软件开发的一种错误理解。如果软件开发仅仅是代码编写,查找BUG,可以说,那实在是一些低级的软件行为,做了十年的开发人员,确实不见得比作了3年的人更强多少,反正是简单重复的工作,工作3年的一样可以作,而且有更大的热情和精力。但是,应该跳出这个怪圈,走向更高的领域,对软件开发重新进行认识。要明白,软件开发要融入工程化的思想,要有高度的设计能力,关注更多的软件运行属性和设计质量属性,同样的系统,不同的软件人员会做出完全不同的软件,正规,高效的开发团队要比游击队开发团队不只高出几十倍。软件开发,不仅仅关注功能,性能,更应该去研究可维护性,可扩展性等质量属性,不仅仅只关注代码,而更要上升为设计,复用等。软件开发不仅仅是写出C语言的代码,单元测试,同行评审,培训与学习,这同样是开发人员基本的素质,也是提高软件质量的最基本手段。举例来说,单元测试做好了,就可以让开发效率大大提高,也能让软件的维护成本降下来。把开发人员解放出来。同行评审可以让开发人员之间更多的交流和沟通,在设计,编码阶段严格控制软件质量,培训则是提高自身技术水平,从理论上提升自己的最好方法。先前这些主要的质量行为都被忽略了,而这恰恰是走出低级开发的最好途径。同时,还有更高层次的设计开发,软件重构,模块化,系统构架,搭建统一软件平台,度量软件质量等等,有了重构,就会写出可读性好,可维护性好的软件,甚至因此提高自己的软件设计能力,减少出错的几率;模块化,让软件最大程度的实现复用,提高软件开发效率和开发质量。软件构架设计,从技术层次上最早决定了软件的命运,而这里又有太多的技术,设计模式,软件规划等,让软件开发从编码上升到设计的层次,搭建统一软件平台,是大产品,系列化开发的必然之路,对于软件质量的度量,会让我们的软件开发变得更加透明,清晰,让我们更清楚的把握到软件开发过程,从各个环节去控制软件质量,而不是仅仅凭着感性的认识到了最后才去补救。
以上这些知识,一个人,哪怕勤奋学习一辈子,也不可能完全具备所有的技能。35岁算什么,做到70岁都不晚。当然,你需要真正的热爱它,并且不断得学习和进修。所以说,软件开发人员,要作的事情太多了,软件实在是一个浩大的脑力工程,甚至会让人觉得这是一个投入/产出比最低的行业,因为要学习的知识实在太多了,每时每刻都要处于不断的学习和更新当中,呵呵,既然选择了,既然喜欢了,就投入进去,享乐于此了。最重要的是,我们自己能并且愿意去认识到这一点,跳出低级开发的怪圈,走向更高的层次
同时,要意识到,一个资深开发人员的作用绝不亚于一个管理人员,高明的企业应该给予相同的待遇,要把培养和储备高级技术人才作为高科技企业的重点发展方向,这样才能让企业在人才领域得到不断积累,资深开发人员才会带出高效的开发团队,从而开发出高质量,高效率的软件,让企业在不断激烈的竞争中取胜。要明白,不是每个人都适合或者乐于转向管理的,很多人就是适合做开发工作,他们可以走得更深入,成为专家,应该充分发挥出他们的能力,让整个团队高效运作起来。
所以说,开发人员,决不只是35岁,只要你愿意,可以作一生的开发,从中获得更多的快乐。
发表评论
-
我的IT未来预测及个人规划
2011-11-13 21:34 0现状: windows 市场占有率高 linux 市场 ... -
[转]华为时间管理培训
2011-11-04 23:49 694什么是时间管理 “时 ... -
俞敏洪:我让女儿主动学习的秘密
2011-09-15 10:59 531我之所以能够在这 ... -
[俞敏洪]当第一也不容易
2011-09-15 10:58 621其实当第一名也确实不容易,因为他走得很辛苦,往前面一看,一个追 ... -
[转自搜狐]外交部副部长傅莹就中国航母海试接受外媒采访
2011-08-23 20:54 375中新网8月23日电 据外交 ... -
[转载]十个成功励志小故事
2011-03-03 15:16 6811,▲相信自己是一只 ... -
[转载]为什么搞计算机工作的人看上去很清闲
2011-02-18 19:49 655非IT人员经常会产生这样的疑问,这个图片会多少回答这样的问题: ... -
[转载]完美程序员的10种品质
2010-12-31 20:43 530导读:谁是完美程序员?著名博客作家Alex Iskol ... -
[转载]软件开发中的11个系统思维定律
2010-12-18 15:56 497“我会更加努力地工作 ... -
[转载]如何解决消极怠工(事业单位)
2010-08-28 05:05 1190消极怠工理由: ... -
[转载]中国人的盲目攀比
2010-08-28 04:37 529徐明旭 拜孔夫子之 ... -
[转载]周鸿伟的成功秘决
2010-08-28 04:24 605不攀比不跟风做事装孙子 -
[转载]系统管理员变程序员 四步转型
2010-08-07 08:09 579作者:Justin James 翻译:PurpleEndure ... -
[学习笔记]微软技术必知的几个网站
2010-05-08 05:20 549http://www.microsoft.com/china/ ... -
[转载备份]Rails创始人DHH新作《Rework》读书笔记:“少!快!精!”
2010-03-24 14:01 1071注: 首先向作者致以诚挚的歉意。引用您的文章,并非为了赚 ... -
[转载]对自学编程者的一些建议
2010-03-24 13:56 658学习编程已经不再是少 ... -
[转载]充满荆棘的专家程序员之道
2010-03-24 13:50 558国外程序员常常遇 ... -
读《做单》有感
2010-02-21 17:03 599虽然这是一本写IT行业销售故事的书,但是其中的主人公的心路历程 ... -
[转载]数学是知识,哲学是智慧
2010-01-10 09:54 635至于知识和智慧的区别 ... -
[转载]马云的经典语录(给奋斗者)
2010-01-10 09:52 831*今天很残酷,明天更残 ...
相关推荐
介绍了程序员如何进一步进阶提升自己能力的转载文档!真是有效,字字珠玑,大家快来下载啊!
程序员面试刷题的书哪个好 description 转载自嗨 程序员的生活 你,上海土著,家境贫寒,没房没车,普通师范本科+垃圾文科专业。大四毕业后你的同学不是考同校毛邓三专业的研究生就是去小学初中做老师、去考公务员,...
Speaking JavaScript 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
程序员35岁前成功的12条黄金法则,转载一个牛人对ggmm的建议
### Java程序员面试试题详解 #### CORBA的理解与应用 CORBA,全称为Common Object Request Broker Architecture,即公共对象请求代理体系结构,是由Object Management Group(OMG)制定的一项标准。其核心目标在于...
也是转载的 很符合实际 希望大伙能好好看看 谢谢
高级程序员基本素质 提高程序员的素质(转载)
写了一些思维逻辑
转载须知:转载请在文首注明出处,如发现恶意抄袭/搬运,会动用法律武器维护自己的权益。让我们一起维护一个良好的技术创作环境! :fuel_pump:全文持续更新中...微信公众号目录算法Java虚拟机春天SpringMVC高并发...
这份《薪酬报告系列-2020全国地区网页程序员岗位薪酬调查报告.pdf》详细记录了2020年全国范围内网页程序员这一岗位的薪酬情况。报告由薪酬网的数据部精心整理编撰,并拥有其版权,禁止未经授权的转载和抄袭。该报告...
这个题目常出现在程序员面试中,尤其是针对初级到中级水平的候选人,因为它能很好地测试候选人的基础算法理解能力和代码实现能力。在标签中提到的“源码”和“工具”,可能意味着解题过程中会涉及到阅读和分析他人...
求职”的本质其实就是人的流通,和一般的商业行为无异:一方求售、一方求货。未见其人,先睹其函。简历以书面形式传达一个人的学历、经历、...简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
转载须知以下所有文章全部都是鸭哥(公众号:鸭哥聊Java)的原创,转载在文首注明出处: : ,如发现恶意抄袭/搬运,会通过法律武器维护自己的权益。热门问题公众号如果大家想要实时关注我更新的文章以及分享的干货的...
在汇编语言中,程序员可以直接使用硬件支持的指令集,操作寄存器和内存地址,直接进行硬件控制。由于Bootloader在执行时还远未达到操作系统层,所以没有高级语言运行时支持。 6. 分区表:在MBR中,除了Bootloader...
程序员5个刷题网站 资源札记 此repo不再更新,新地址请移步 此处将专门用于转载记录各种资源文章 资源转载 大前端 Javascript及相关 javascript秘密花园 CSS及相关 HTML5 解决方案、框架、库 Css预编译技术 构建方案...
这个组件允许程序员创建和管理列表形式的数据展示,提供了一种直观、交互性强的用户界面。在本篇文章中,我们将深入探讨ListView类的实现、功能以及如何在VB6中进行自定义和优化。 首先,ListView类提供了多种视图...