`
阅读更多

转载自:http://laoding.blog.ccidnet.com/blog-htm-itemid-105181-do-showone-uid-34092.html

 

不错的文章,客观反应了国内IT业“编而优则仕”的现状,IT业是不是到改变的时候了?

 

原文:
  在中国,程序员不能超过35岁,似乎已 经是不争的事实,软件开发工作就是青春饭,顶多靠毕业这十年的时间,超过这个年龄,要不成功跃身成为管理者,要不转行进入其他领域,好像再没有更好的选 择,即使偶有继续坚持作开发的,也被看成另类一族。老外却不是这样,40,50岁仍然作开发工作的大有人在,甚至很多牛人,包括获得康柏最佳软件奖的 Robber,仍在埋头作着他所喜欢的编码工作,为何如此差异。我仔细想了一下,特别是这一年参加了太多的技术培训,基本有了一些结论。
  首 先,国内软件开发工作的性质决定这一切,我们所作的产品开发,真正技术含量并不高,高等院校毕业的学生,经过几年的培训和实践,基本都能掌握这些技能,而 我们现有产品开发设计水平有限,对于软件开发的理解还仅限于编码,完成功能这些基本的需求,产品进度是第一驱动力,特别是一些小公司,把快速开发出产品作 为最高目标,软件设计质量差,很少考虑可维护性,可扩展性这些重要的软件质量属性,仅仅追求功能和进度,产品以最快的速度完成设计,编码,少有测试甚至没 有测试,就直接交付给客户,在客户那里暴露出各种各样的问题出来,开发人员就开始不断得为客户解决这样那样的问题,软件做到最后,很多人都会陷入自己不断 挖掘出来的“陷阱”里走不出来,步入在复杂的系统中查找BUG,解决BUG,增加功能,引入新的BUG,再解决BUG,这样永无休止的恶性循环中,从事的 都是一些低级开发工作,对于软件开发的理解无法上升到更高的层次,每天都疲于救火和拼命打补丁,软件维护成本居高不小,即使最终摆脱了这样的厄运——项目 结束,下一次软件开发又是同样过程的重复,这些无休止的低级开发和维护工作,会耗光一个人所有的激情和精力,随着年龄的增大,热情和体力都在衰减,而这些 工作,只要毕业生经过培训,同样可以胜任,有着廉价的,并且充满热情的毕业生作竞争,身心疲惫的老程序员必然面对更大的竞争压力,做到最后,连他们自己都 会失去对软件开发的兴趣,甚至会产生厌倦的情绪,对于这样的快速开发模式,十年开发经验和五年开发经验有很大区别吗?干吗不使用更经济便宜的开发人员。
   另一个原因,是我们中国人一向的官本位思想,开发人员始终处于一种很尴尬的境界,听起来从事的是高级技术工作,说起来也是“以人为本”,但是,有多少企 业管理者真正重视和认可开发人员的,哪怕是硕士,博士,这些开发人员在“大官,小官”面前,都只是普通劳动者而已。程序员是一个没有未来的行业,哪怕资历 再深,能力在强,也还是一个劳动者而已,只有当上领导,走上管理才是最终的出路,否则,薪水上不去,地位上不去,只能面对被淘汰的命运。
  
   实际不然,之所以出现这种问题,是国内对软件开发的一种错误理解。如果软件开发仅仅是代码编写,查找BUG,可以说,那实在是一些低级的软件行为,做了 十年的开发人员,确实不见得比作了3年的人更强多少,反正是简单重复的工作,工作3年的一样可以作,而且有更大的热情和精力。但是,应该跳出这个怪圈,走 向更高的领域,对软件开发重新进行认识。要明白,软件开发要融入工程化的思想,要有高度的设计能力,关注更多的软件运行属性和设计质量属性,同样的系统, 不同的软件人员会做出完全不同的软件,正规,高效的开发团队要比游击队开发团队不只高出几十倍。软件开发,不仅仅关注功能,性能,更应该去研究可维护性, 可扩展性等质量属性,不仅仅只关注代码,而更要上升为设计,复用等。软件开发不仅仅是写出C语言的代码,单元测试,同行评审,培训与学习,这同样是开发人 员基本的素质,也是提高软件质量的最基本手段。举例来说,单元测试做好了,就可以让开发效率大大提高,也能让软件的维护成本降下来。把开发人员解放出来。 同行评审可以让开发人员之间更多的交流和沟通,在设计,编码阶段严格控制软件质量,培训则是提高自身技术水平,从理论上提升自己的最好方法。先前这些主要 的质量行为都被忽略了,而这恰恰是走出低级开发的最好途径。同时,还有更高层次的设计开发,软件重构,模块化,系统构架,搭建统一软件平台,度量软件质量 等等,有了重构,就会写出可读性好,可维护性好的软件,甚至因此提高自己的软件设计能力,减少出错的几率;模块化,让软件最大程度的实现复用,提高软件开 发效率和开发质量。软件构架设计,从技术层次上最早决定了软件的命运,而这里又有太多的技术,设计模式,软件规划等,让软件开发从编码上升到设计的层次, 搭建统一软件平台,是大产品,系列化开发的必然之路,对于软件质量的度量,会让我们的软件开发变得更加透明,清晰,让我们更清楚的把握到软件开发过程,从 各个环节去控制软件质量,而不是仅仅凭着感性的认识到了最后才去补救。
  以上这些知识,一个人,哪怕勤奋学习一辈子,也不可能完全具备所有的技 能。35岁算什么,做到70岁都不晚。当然,你需要真正的热爱它,并且不断得学习和进修。所以说,软件开发人员,要作的事情太多了,软件实在是一个浩大的 脑力工程,甚至会让人觉得这是一个投入/产出比最低的行业,因为要学习的知识实在太多了,每时每刻都要处于不断的学习和更新当中,呵呵,既然选择了,既然 喜欢了,就投入进去,享乐于此了。最重要的是,我们自己能并且愿意去认识到这一点,跳出低级开发的怪圈,走向更高的层次
  同时,要意识到,一个 资深开发人员的作用绝不亚于一个管理人员,高明的企业应该给予相同的待遇,要把培养和储备高级技术人才作为高科技企业的重点发展方向,这样才能让企业在人 才领域得到不断积累,资深开发人员才会带出高效的开发团队,从而开发出高质量,高效率的软件,让企业在不断激烈的竞争中取胜。要明白,不是每个人都适合或 者乐于转向管理的,很多人就是适合做开发工作,他们可以走得更深入,成为专家,应该充分发挥出他们的能力,让整个团队高效运作起来。
   所以说,开发人员,决不只是35岁,只要你愿意,可以作一生的开发,从中获得更多的快乐。

分享到:
评论

相关推荐

    程序员面试.pdf

    三十四、腾讯实习生笔试面试总结、三十五、曝光腾讯面试全记录:详细描述了腾讯公司的笔试和面试流程,以及整个面试过程的记录。 三十六、华为面试归来的感想:作者分享了在华为面试后的感想和体验。 三十七、迅雷...

    程序员简历优化指南.pdf

    三、工作经历 1. **项目经验**:详细描述过往项目,包括项目目标、职责、使用的技术、实现的效果。 2. **成果展示**:如项目上线时间、用户量、性能提升等具体数据,增加说服力。 3. **问题解决**:分享遇到的难题及...

    UNIX程序员手册

    《UNIX程序员手册》是一部详尽阐述UNIX操作系统编程与开发的经典之作。手册的目的是为了帮助开发者在UNIX环境中高效地工作,理解和掌握其核心概念、工具以及编程接口。以下将围绕手册内容进行详细介绍。 一、UNIX...

    《程序员羊皮卷》电子书txt版

    ### 《程序员羊皮卷》知识点总结 #### 一、前言与背景 - **书籍定位**:本书针对IT行业的学生及从业者所面临的生活与工作中的各类问题提供实用建议。 - **作者简介**:张大志,一位资深的IT行业专家,通过其丰富的...

    程序员的职场成长 (程序员必看)

    25五个步骤查实公司信息 26筛选重点应聘目标 27了解职位信息有的放矢 29明确职业和发展方向 29简历及求职信 30工作经历要这样写 33面试前徹 Checklist 34面试中有进有退 34了解人力资源经理的思考角度 35...

    程序员优秀个人简历范文模板

    在信息技术日新月异的时代,程序员成为了许多企业和创新团队不可或缺的角色。编写一份高质量的个人简历对于程序员来说至关重要,因为这不仅展示了他们的技术能力,也体现了他们的专业素养和沟通技巧。以下是一些关于...

    非程序员2001-35

    例如,《探索需求》这本书就是该领域的经典之作。需求获取是软件开发过程中的关键一步,它涉及到与客户的沟通、需求的分析和定义等工作。有效的需求获取可以确保开发出的软件真正符合用户的期望。同时,需求管理也是...

    程序员,不止干到35岁

    在中国,程序员不能超过35岁,似乎已经是不争的事实,软件开发工作是青春饭,顶多靠毕业这十年的时间,超过这个年龄,要不成功跃身成为管理者,要不转行进入其他领域,好像再没有更好的选择,即使偶有继续坚持作开发...

    程序员简历参考—单页单色风格35.zip

    标题"程序员简历参考—单页单色风格35.zip"表明这是一个针对程序员设计的简历模板,采用简洁的单页单色设计风格。这种风格通常旨在突出内容,减少视觉干扰,使招聘者能快速抓住关键信息。 【简历制作要点】 1. **...

    程序员英文简历模板—单页单色风格35.zip

    【标题】:“程序员英文简历模板—单页单色风格35.zip”是一个专门为程序员设计的英文简历模板,采用简洁明了的单页单色设计,旨在突出技术能力和项目经验。 【描述】:这个压缩包包含了一份针对IT专业人士的英文...

    PHP CHINA 程序员杂志

    ### PHP CHINA 程序员杂志第十二期知识点概览 #### 一、PHP的全球影响力与国内发展趋势 - **国际地位**:根据国际权威机构的调查报告显示,PHP技术在全球互联网社区领域的应用稳居首位。 - **国内市场现状**:在...

    程序员简历模板-单页单色35.docx

    【程序员简历制作要点】 在创建一份出色的程序员简历时,有几个关键点需要注意,这些要点可以帮助你更好地展示自己的技能和经验,从而吸引潜在雇主的注意。以下是一些建议: 1. **突出技能和工作经验**: - 确保...

    程序员必备的计算机英语1500词

    程序员在日常工作中需要频繁与计算机和网络系统打交道,因此掌握一定的专业英语词汇对于他们来说是至关重要的。在IT领域,很多术语和命令都是用英文表示的,正确理解和运用这些专业词汇对于提高工作效率和进行国际...

    嵌入式C和C++程序员考试题目.docx

    嵌入式C和C++程序员考试题目.docx 本资源为嵌入式C和C++程序员考试题目,涵盖了C语言的基本数据类型、枚举类型、结构类型、联合类型、长整型常数、char型数据存储形式、int型数据的取值范围、字符型变量的赋值语句...

    程序员编程艺术--共二十七章-集锦与总结(教你如何编程)

    - **第十二~十五章:中签概率,IP访问次数,回文等问题** - 探讨一系列实际应用中的统计问题。 - 提供相应的算法和实现技巧。 - **第十六~第二十章:全排列,跳台阶,奇偶排序,第一个只出现一次等问题** - 覆盖...

    全国计算机软考程序员考试大纲.pdf

    本资源摘要信息是基于全国计算机软考程序员考试大纲的考试说明、描述、标签和部分内容。该考试大纲旨在评估考生的计算机软件设计和开发能力,包括数据表示、算术和逻辑运算、计算机体系结构、软件设计、数据库、网络...

    程序员常用计算机专业英语

    #### 35. help - **名词/动词**: 帮助(help)通常指提供指导或支持以解决问题。 #### 36. memory - **名词**: 存储器、记忆存储(memory)指计算机中的存储部件,用于暂时存放正在处理的数据和指令。 #### 37. ...

Global site tag (gtag.js) - Google Analytics