不作35岁的程序员

2023-11-04

http://blog.chinaunix.net/uid-28647963-id-3540115.html

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不作35岁的程序员 的相关文章

  • java、python、 node、js(ES6)、Vue导入外部的函数或者变量

    java import org springframework boot SpringApplication python import os from flask import flask babel flask session node
  • 一个40岁程序员的经历

    有好几年没有上CSDN了 最近密码泄露事件 才让人想起久违的csdn 还好 通过注册邮箱顺利的找回了密码 十年前的时候 常在csdn潜水的老人们 现在还有人再来csdn吗 估计大部分都已经转行 当管理者或者当老板了吧 仍然做软件的可能只是极
  • csdn 代码样式 代码高亮 代码风格

    刚玩csdn 结果发现博客帮助里没有教这个 就写了一下 希望可以帮到一些和我一样的新手 在文章的富文本内 选择源代码后 在源代码中编辑即可 修改下文中的class可以进行多种样式风格的支持 如html c javascript java c
  • Sublime Text 3 常用快捷键

    Ctrl Shift P 打开命令面板 Ctrl P 搜索项目中的文件 Ctrl G 跳转到第几行 Ctrl W 关闭当前打开文件 Ctrl Shift W 关闭所有打开文件 Ctrl Shift V 粘贴并格式化 Ctrl D 选择单词
  • win10 提供管理员权限才能删除文件夹

    计算机管理员帐户 也就是我们熟知的 Administrator 拥有可执行影响其他用户操作的权限 由于win10专业版刚发布 很多用户不知道怎么取得管理员权限 接下来小编就跟大家分享启用管理员权限的方法 1 打开win10专业版的开始菜单中
  • Premiere Pro 2022 for Mac(pr2022)中文版

    Mac版Premiere Pro 2022更新了 最新版的pr2022不仅可以帮助用户对各种视频进行剪辑 旋转 分割 合并 字幕添加 背景音乐等基础的处理 还能帮助用户进行视频颜色校正 颜色分级 稳定镜头 调整层 更改片段的持续时间和速度
  • 不作35岁的程序员

    http blog chinaunix net uid 28647963 id 3540115 html 在中国 程序员不能超过35岁 似乎已经是不争的事实 软件开发工作就是青春饭 顶多靠毕业这十年的时间 超过这个年龄 要不成功跃身成为管理
  • 【综合类型第 36 篇】我的四周年创作纪念日

    这是 综合类型第 36 篇 如果觉得有用的话 欢迎关注专栏 今天早上习惯性的打开 CSDN 看下大家给我的点赞 收藏 评论和私信 其中有一条官方发送的消息 原来今天是我成为 IT 创作者四周年的纪念日 距离我在 2018 年 10 月 12
  • GNU MCU Eclipse (STM32调试) win7配置

    eclipse官方有开源项目对STM32开发支持较好 由于Eclipse更新较快 插件配置较麻烦 建议使用开源项目 打包下载后直接使用 前提是已安装好JDK 安装好的界面如下 ST LINK配置好调试界面如下 测试工程结构如下 设备安装包如
  • 鬼泣4refrain 《鬼泣4 refrain》图文全攻略(iphone版)

    本篇文章由 泉州SEO www 234yp com 整理发布 转载请注明原文地址 www 234yp com Article 147467 html 谢谢合作 鬼泣4refrain 您可能感兴趣的话题 鬼泣4 核心提示 鬼泣4 是 鬼泣 系
  • 拜访陈朋之老师所感

    初次结识 妻子在2018年12月份备考PMP考试时 我陪妻子去上PMP培训课程 有幸结识陈朋之老师 由于当时课间请教陈老师问题的人比较多 我和陈老师只是做了自我介绍 未能进行深入交流 所幸期间妻子一直请教陈老师问题 经过商易大家约了一个时间
  • 解决java.net.SocketException: Invalid argument or cannot assign requested address

    今天发现facebook app读取facebook上的api时发生以下错误 java net SocketException Invalid argument or cannot assign requested address 解法 l
  • 锁的四种状态及升级过程

    锁的四种状态与锁升级过程 图文详解 一 前言 锁的状态总共有四种 级别由低到高依次为 无锁 偏向锁 轻量级锁 重量级锁 这四种锁状态分别代表什么 为什么会有锁升级 其实在 JDK 1 6之前 synchronized 还是一个重量级锁 是一
  • 发展,管理,前辈,名人等有用的文章链接

    专访李智勇 一个老程序员的哲学思考与勇猛精进的人生 http www csdn net article 2014 09 24 2821834 程序员生存定律 目录 http blog csdn net leezy 2000 article
  • C++中.cpp和.hpp的区别

    时间 2020 06 02 标签 c cpp hpp 区别 栏目 C C 繁體版 原文 https my oschina net u 4398200 blog 3336507 原文地址 https blog csdn net qzx9059
  • oracle账号共享

    各位小伙伴 在oracle官网下载JDK需要oracle账号 本人提供账号共享 方便大家下载 希望大家不要改密码 方便更多的人 账号 908344069 qq com 密码 Java2019 jdk 8u271 linux x64 tar
  • Design Compiler指南——设计综合过程

    在前面一章介绍完施加约束之后 接下来要做的工作就是将设计进行综合编译 compile 本文我们将主要讨论综合编译的过程 主要分为这样几个部分 优化的三个阶段及其特点 编译的策略 编译层次化的设计 一 优化的三个阶段 这一节我们介绍Desig
  • 如何将照片中的文字转变成可编辑的文章(如何将书上的文字转变为可编辑的文字)

    在工作中 我常常在想 要是能把纸上有用的文字快速输入到电脑中 不用打字录入便可以大大提高工作效率该有多好呀 随着科技的发展 这个问题在不断的解决 例如 现在市场上的扫描仪就带有OCR软件 可以把扫描的文字转换到电脑中进行编辑 但是 对于我们
  • excel在双显示器上打开两个独立的xlsx表格

    平时配置的双显示器 要在两个显示器上各打开一个excel表格 一个用来做参考 另一个用来制作新表格 默认的office竟然不支持同时开两个独立窗口的excel表格 解决方式是安装微软的新补丁 http download microsoft
  • 逻辑综合——工艺库

    一 库文件的设置 运行DC时需要用到的库文件有 目标库 target library 链接库 link library 符号库 symbol library 算术运算库 synthetic library 1 目标库 目标库是综合后电路网表

随机推荐

  • java循环操作分页查询

    public void pageQuery List
  • tomcat服务器输入localhost可以访问,ip无法访问解决办法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 最近在开发项目中 遇到的一个问题是 在 tomcat中发布一个web项目 但是发布成功后 只能用http localhost 8080 fm访问项目 不能用 http 12
  • 【模电】0008 有源滤波器3(二阶有源高通、带通、带阻滤波器)

    上一节我们分析了二阶有源低通滤波器 这一节我们来继续 分析其他种类的二阶滤波器 包括高通 带通 带阻滤波器 由于分析过程是类似的 都是以节点列方程 化简后得到传递函数 本篇就不具体写计算过程了 直接给出仿真图和传递函数的结果 1 二阶有源高
  • 怎么把竖线去掉_怎么去掉word竖线

    一 word中文字左边出现竖线 不可以删除怎么解决 1 本次演示操作的Office办公软件为Excel 2013版本 2 首先新建一个Word文档 输入用于演示的文本数据 在以下的文本中我们可以看到文字左边有竖线 下面我们来操作删除这条竖线
  • 【Java、Redis】通过中心经纬度与半径获取范围内的结果集(类似附近的人)

    文章目录 需求 解决方案 什么是Redis GeoHash 1 Java Redis实现 引用的pom依赖 InitEquLongLatTask java Controller Service dao xml sql语句 2 Java 数据
  • 推特公司员工大规模辞职,挺有勇气的

    近日 一则推特公司员工大规模辞职登上热搜 推特CEO马斯克 此前说目前推特正在为赢得激烈竞争而砥砺前行 所以需要所有员工接受 高强度 长时间 努力工作 邮件里附了一个同意选项框 可以选 是 或 否 选择了 是 的员工 可以留下 选了 否 的
  • 分支结构 --> if else分支结构

    if else分支结构 if 条件表达式 语句块1 else 语句块2 判断条件表达式是否成立 gt 若成立 则执行语句块1 gt 若不成立 则执行语句块2 package demo 编程使用if else分支结构来模拟考试成绩查询的过程
  • 关于DOTS的个人总结

    网上已经有比较多的DOTS的资料了 这里就简单介绍一下 DOTS Data Oriented Technology Stack 数据导向型技术栈 的缩写 是Unity退出的面向多线程编程的解决方案 其包含了 C Job System Ent
  • 如何根据芯片手册时序图编写驱动程序

    如何根据芯片手册时序图编写驱动程序 对于电子开发者来说 刚刚拿到一个芯片 常用的芯片可以参考网上的例程来做深入了解 对于一个不常用的芯片来说 Datasheet几乎是使用芯片的唯一的资料 所以根据Datasheet时序图写出对应的驱动程序就
  • vue样式穿透(::v-deep,/deep/的使用)

    在 vue 项目的开发过程 使用了vant ElementUI antdui等组件且样式 style 使用了 scoped 属性 当想要修改组件样式 发现直接修改不了 需去掉 scoped 属性或者使用深度选择器才能修改成功 去掉scope
  • GD32F190 ADC多通道DMA自动接收踩坑指南

    如果条件允许的话 请不要用GD32F1x0系列 题记 这个系列的芯片官方连个库函数指南都没有你敢信 我都不要求中文版的了 起码英文版的得有吧 以往stm32的ADC工作模式 一般都是配置成多个通道自动连续切换 然后通过DMA把数据读走 这次
  • Vue和React的区别和优势对比

    相同点 1 都使用了 Virtual DOM 虚拟DOM 2 都支持服务器端渲染 3 提供了响应式 Reactive 和组件化 Composable 的视图组件 4 都有 props 的概念 这是properties的简写 props在组件
  • 办公室共享打印机怎么连接?

    每个办公室内 必不可少的就是打印机 但是也不可能给每个人都配备一台打印机吧 为了方便打印 可以局域网设置让多台电脑共享一台打印机 下面就来看看连接办公室共享打印机的方法 1 在桌面上打开我的电脑 2 打开控制面板 找到查看和打印机 打开 3
  • MTF浅谈概论,SFR原理,CTF,各自优缺点

    MTF浅谈概论 SFR原理 CTF 各自优缺点 好像很多人很多地方 不管什么样的清晰度测试都通通叫MTF 比如用线对的方式测的对比度也叫MTF SFR 也叫MTF 其实如果将MTF作为一个统称概念不是不行 但容易造成很多人混淆 概念模糊 尤
  • Unity动画系统简单介绍

    Unity动画系统知识点简单介绍 简易 本文是学习文 其中转载某些文章 如有侵权 联系删除 学习要点 1 动画的分类 游戏物体的基础动画设置 UGUI设置的按钮状态 2D游戏Sprite动画 Root Motion设置 人物模型动画设置 1
  • Opencv中的轮廓检测及应用

    在openCV中 我们可以对图片的轮廓进行检测 虽然轮廓的检测看起来很简单 只是对一个图形的边框进行描绘 但是 它在很多领域上都应用到了 例如 人脸识别 车辆检测 视频采集等 下面我会通过人脸识别和车辆检测两部分为大家展示 1 轮廓的概述
  • linux中gcc指令,Linux GCC命令备忘

    简介 gcc GNU C Compiler 但不局限于c语言 还支持C JAVA OBJECIVE C PASCAL等 变成了GNU Complier Collection 即GNU编译器家族 几个简单的指令 gcc hello c o h
  • pytorch如何计算平方_如何使用pytorch自动求梯度

    构建深度学习模型的基本流程就是 搭建计算图 求得损失函数 然后计算损失函数对模型参数的导数 再利用梯度下降法等方法来更新参数 搭建计算图的过程 称为 正向传播 这个是需要我们自己动手的 因为我们需要设计我们模型的结构 由损失函数求导的过程
  • 关于ICMP简介

    ICMP 简介 ICMP是 Internet Control Message Protocol Internet控制报文协议 ICMP协议是一种面向无连接的协议 它是TCP IP协议族的一个子协议 用于在IP主机 路由器之间传递控制消息 I
  • 不作35岁的程序员

    http blog chinaunix net uid 28647963 id 3540115 html 在中国 程序员不能超过35岁 似乎已经是不争的事实 软件开发工作就是青春饭 顶多靠毕业这十年的时间 超过这个年龄 要不成功跃身成为管理