0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一位开发工程师的职业领悟

工程师人生 来源:网络整理 作者:工程师吴畏 2018-06-28 16:23 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在中国,程序员不能超过35岁,似乎已经是不争的事实,软件开发工作就是青春饭,顶多靠毕业这十年的时间,超过这个年龄,要不成功跃身成为管理者,要不转行进入其他领域,好像再没有更好的选择,即使偶有继续坚持作开发的,也被看成另类一族。老外却不是这样,40,50岁仍然作开发工作的大有人在,甚至很多牛人,包括获得康柏最佳软件奖的Robber,仍在埋头作着他所喜欢的编码工作,为何如此差异。我仔细想了一下,特别是这一年参加了太多的技术培训,基本有了一些结论。

首先,国内软件开发工作的性质决定这一切,我们所作的产品开发,真正技术含量并不高,高等院校毕业的学生,经过几年的培训和实践,基本都能掌握这些技能,而我们现有产品开发设计水平有限,对于软件开发的理解还仅限于编码,完成功能这些基本的需求,产品进度是第一驱动力,特别是一些小公司,把快速开发出产品作为最高目标,软件设计质量差,很少考虑可维护性,可扩展性这些重要的软件质量属性,仅仅追求功能和进度,产品以最快的速度完成设计,编码,少有测试甚至没有测试,就直接交付给客户,在客户那里暴露出各种各样的问题出来,开发人员就开始不断得为客户解决这样那样的问题,软件做到最后,很多人都会陷入自己不断挖掘出来的陷阱里走不出来,步入在复杂的系统中查找BUG,解决BUG,增加功能,引入新的BUG,再解决BUG,这样永无休止的恶性循环中,从事的都是一些低级开发工作,对于软件开发的理解无法上升到更高的层次,每天都疲于救火和拼命打补丁,软件维护成本居高不小,即使最终摆脱了这样的厄运项目结束,下一次软件开发又是同样过程的重复,这些无休止的低级开发和维护工作,会耗光一个人所有的激情和精力,随着年龄的增大,热情和体力都在衰减,而这些工作,只要毕业生经过培训,同样可以胜任,有着廉价的,并且充满热情的毕业生作竞争,身心疲惫的老程序员必然面对更大的竞争压力,做到最后,连他们自己都会失去对软件开发的兴趣,甚至会产生厌倦的情绪,对于这样的快速开发模式,十年开发经验和五年开发经验有很大区别吗?干吗不使用更经济便宜的开发人员。

另一个原因,是我们中国人一向的官本位思想,开发人员始终处于一种很尴尬的境界,听起来从事的是高级技术工作,说起来也是以人为本,但是,有多少企业管理者真正重视和认可开发人员的,哪怕是硕士,博士,这些开发人员在大官,小官面前,都只是普通劳动者而已。程序员是一个没有未来的行业,哪怕资历再深,能力在强,也还是一个劳动者而已,只有当上领导,走上管理才是最终的出路,否则,薪水上不去,地位上不去,只能面对被淘汰的命运。

实际不然,之所以出现这种问题,是国内对软件开发的一种错误理解。如果软件开发仅仅是代码编写,查找BUG,可以说,那实在是一些低级的软件行为,做了十年的开发人员,确实不见得比作了3年的人更强多少,反正是简单重复的工作,工作3年的一样可以作,而且有更大的热情和精力。但是,应该跳出这个怪圈,走向更高的领域,对软件开发重新进行认识。要明白,软件开发要融入工程化的思想,要有高度的设计能力,关注更多的软件运行属性和设计质量属性,同样的系统,不同的软件人员会做出完全不同的软件,正规,高效的开发团队要比游击队开发团队不只高出几十倍。软件开发,不仅仅关注功能,性能,更应该去研究可维护性,可扩展性等质量属性,不仅仅只关注代码,而更要上升为设计,复用等。软件开发不仅仅是写出C语言的代码,单元测试,同行评审,培训与学习,这同样是开发人员基本的素质,也是提高软件质量的最基本手段。举例来说,单元测试做好了,就可以让开发效率大大提高,也能让软件的维护成本降下来。把开发人员解放出来。同行评审可以让开发人员之间更多的交流和沟通,在设计,编码阶段严格控制软件质量,培训则是提高自身技术水平,从理论上提升自己的最好方法。先前这些主要的质量行为都被忽略了,而这恰恰是走出低级开发的最好途径。同时,还有更高层次的设计开发,软件重构,模块化,系统构架,搭建统一软件平台,度量软件质量等等,有了重构,就会写出可读性好,可维护性好的软件,甚至因此提高自己的软件设计能力,减少出错的几率;模块化,让软件最大程度的实现复用,提高软件开发效率和开发质量。软件构架设计,从技术层次上最早决定了软件的命运,而这里又有太多的技术,设计模式,软件规划等,让软件开发从编码上升到设计的层次,搭建统一软件平台,是大产品,系列化开发的必然之路,对于软件质量的度量,会让我们的软件开发变得更加透明,清晰,让我们更清楚的把握到软件开发过程,从各个环节去控制软件质量,而不是仅仅凭着感性的认识到了最后才去补救。

以上这些知识,一个人,哪怕勤奋学习一辈子,也不可能完全具备所有的技能。35岁算什么,做到70岁都不晚。当然,你需要真正的热爱它,并且不断得学习和进修。所以说,软件开发人员,要作的事情太多了,软件实在是一个浩大的脑力工程,甚至会让人觉得这是一个投入/产出比最低的行业,因为要学习的知识实在太多了,每时每刻都要处于不断的学习和更新当中,呵呵,既然选择了,既然喜欢了,就投入进去,享乐于此了。最重要的是,我们自己能并且愿意去认识到这一点,跳出低级开发的怪圈,走向更高的层次

同时,要意识到,一个资深开发人员的作用绝不亚于一个管理人员,高明的企业应该给予相同的待遇,要把培养和储备高级技术人才作为高科技企业的重点发展方向,这样才能让企业在人才领域得到不断积累,资深开发人员才会带出高效的开发团队,从而开发出高质量,高效率的软件,让企业在不断激烈的竞争中取胜。要明白,不是每个人都适合或者乐于转向管理的,很多人就是适合做开发工作,他们可以走得更深入,成为专家,应该充分发挥出他们的能力,让整个团队高效运作起来。

所以说,开发人员,决不只是35岁,只要你愿意,可以作一生的开发,从中获得更多的快乐。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1603

    浏览量

    71218
  • 编码
    +关注

    关注

    6

    文章

    1040

    浏览量

    57133
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    十年铸剑・共敲开市锣|一位工程师与美格智能的“A+H”新征程

    。庄重的仪式过程中,有这样幕让在场的许多人印象深刻:与其他公司的上市仪式不同,在最重要的8登台嘉宾中,美格智能的一位年轻工程师,作为全公司800多名
    的头像 发表于 03-19 19:05 1134次阅读
    十年铸剑・共敲开市锣|<b class='flag-5'>一位</b><b class='flag-5'>工程师</b>与美格智能的“A+H”新征程

    电子工程师的双标瞬间 #电子 #电子爱好者 #电子工程师 #扬兴科技 #双标

    电子工程师
    扬兴科技
    发布于 :2026年03月02日 18:04:13

    什么是BSP工程师

    任何软件的。BSP工程师需要结合硬件原理图修改从芯片厂商拿到的参考代码,调试板子,使板子上的操作系统能够正常稳定工作,从而提供个稳定的开发调试环境,这个过程叫做点亮板子,行话叫做Bringup。这
    发表于 01-13 06:54

    绣花线上的数据纽带:一位工程师的PROFIBUS转RS485改造手记

    绣花线上的数据纽带:一位工程师的PROFIBUS转RS485改造手记 1. 工厂背景:老设备遇上新系统 我们厂位于江浙纺织产业带,主要生产高档绣花面料。三年前,公司引入了条德国高速绣花生产线,核心
    的头像 发表于 12-25 14:23 295次阅读
    绣花线上的数据纽带:<b class='flag-5'>一位</b><b class='flag-5'>工程师</b>的PROFIBUS转RS485改造手记

    硬件工程师面试必会:10个核心考点#硬件设计 #硬件工程师 #电路设计 #电路设计

    硬件工程师
    安泰小课堂
    发布于 :2025年09月23日 18:00:33

    招镶入式工程师1个,硬件工程师个,

    东莞市研生科技有限公司是家蓝牙方案公司,主营蓝牙方案的设计开发,产品包括蓝牙BLE/4G透传/AI智能体方案开发,因公司发展需要需对外招聘嵌入式软件开发
    发表于 08-29 02:14

    电子发烧友工程师看!电子领域评职称,技术之路更扎实

    。比如一位电源工程师,评职称前主要做基础电源调试;评上 “高级电源工程师” 后,受邀参与电子发烧友 “电源技术研讨会” 做分享,还接到厂商委托的高功率密度电源开发项目,项目成果被平台推
    发表于 08-20 13:53

    做了电子工程师之后,最好拍的视频出现了#硬件设计 #电子DIY #电子工程师

    电子工程师
    安泰小课堂
    发布于 :2025年06月24日 17:45:57

    物联网工程师为什么要学Linux?

    物联网工程师需要掌握Linux的主要原因可以从技术生态、开发需求、行业应用及就业竞争力四个角度来分析: 、技术生态与行业适配性 1)嵌入式开发的主流平台 物联网设备往往基于嵌
    发表于 05-26 10:32

    【华秋DFM】V4.6正式上线:工程师的PCB设计“好搭子”来了!

    款软件,更 是每一位工程师背后的“隐形助手” 。从设计之初的风险排查,到制造阶段的成本控制,再到装配环节的细节优化,我们始终致力于为工程师们提供更专业、更智能、更贴心的服务。 未来,
    发表于 05-22 16:07

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37