人到中年的程序员,请提前准备好 Plan B
中年程序员的生存现状已经是老生常谈的话题了,有多老呢?十年前,就有一位名叫“johnfx”的程序员谈过这个话题,并且专门为此写了一篇文章。随着中年程序员生存现状的话题再次成为热点,这篇文章被顶到了 HackerNews 网站的首页,并且引发了数百条讨论。
十年前的中年程序员面临的“生存危机”与今天有何不同?十年前的经验是否仍有值得借鉴的地方?AI 前线(ai-front)对“johnfx”的文章进行了编译,并整理了如今程序员对这一问题的看法,希望对各位读者有所帮助。
计算机科学专业的大学生在毕业后的 6 年里,约有 57%的人从事程序员相关职业;而毕业 15 年后,这个数字下降到 34%;在毕业 20 年后,也就是大多数人处于 40 岁出头的年纪时,这个数字下降到了 19%。
相比之下,土木工程同时期的数据分别为 61%、52%和 52%。
科技领域的年龄歧视问题已经引起了相当多的指责,但我怀疑,这可能是这个领域快速变化的必然结果。
请先考虑如下几个问题:
1.员工的市场价值主要取决于他 / 她在与雇主相关的技术方面的经验。
2.软件工程至少每 10 年就会经历一次重大的技术变革。
3.虽然技术的转变并不会完全否定老一辈的技能,但它确实为应届毕业生创造了更公平的竞争环境。
现在,你需要站在招聘经理的角度思考:如果你的公司要使用像 Ruby on Rails 这样的新技术,除了 David Heinemeier Hansson(Ruby on Rails 原作者)拥有 5 年以上的工作经验,其他人都没有。当然,对于经验丰富的老手来说,拥有额外 10 年 C++ 经验的老兵与同样拥有 3 年 Rails 经验的新贵相比,区别还是很大的。在所有条件相同的情况下,你自然会聘用经验更丰富的人。
然而,并非所有的事情都是平等的。这 10 年的 C++ 经验让经验丰富的求职者越来越贵,因为他们需要在 C++ 相关的工作中才能发挥这些经验的价值。问题是,额外经验的边际效用必须超过雇佣老兵的边际成本,才能证明支付溢价是合理的。
参考链接
https://improvingsoftware.com/2009/05/19/programmers-before-you-turn-40-get-a-plan-b/
https://news.ycombinator.com/item?id=20592384
人到中年的程序员,请提前准备好 Plan B的更多相关文章
- github host你懂得,如果你是程序员请不要乱传,求求了
可用截止测试时间 2015-01-12 github相关的hosts 207.97.227.239 github.com 65.74.177.129 www.github.com 207.97.227 ...
- 你想成为优秀的Java程序员吗?
Java是全世界最受欢迎的3大编程语言之一,它可以开发出许多实用的WEB应用程序和桌面应用程序,更重要的一点,Java是跨平台的语言——编写一次,可以再任何地方运行.另外,Java也很容易入门,如果你 ...
- Java程序员需要学习的知识点
Java是全世界最受欢迎的3大编程语言之一,它可以开发出许多实用的WEB应用程序和桌面应用程序,更重要的一点,Java是跨平台的语言——编写一次,可以再任何地方运行.另外,Java也很容易入门,如果你 ...
- 实地探访:月薪 12K 的北京程序员是怎么工作生活的?
阅读本文大概需要 4 分钟. “ 每个人都有自己的亲身经历,每个人都有一条生活道路.千万人千万条,各不相同,各有特点.但是并不是好人都有一条好路,坏人都有一条坏路,有的时候却恰恰相反.这虽然不是历史的 ...
- [置顶]
AI大行其道,你准备好了吗?—谨送给徘徊于转行AI的程序员
前言 近年来,随着 Google 的 AlphaGo 打败韩国围棋棋手李世乭之后,机器学习尤其是深度学习的热潮席卷了整个IT界.所有的互联网公司,尤其是 Google 微软,百度,腾讯等巨头,无不在布 ...
- 2019 年 3 月 iOS程序员面试心得总结,请大家多多指教!
序言: 今年2月中下旬因为个人原因,换了一份工作,3月初期间面试了有3,4家,基本都是D轮或者刚刚上市的公司,也有上榜的BAT,也从他们的面试笔试中看到了自己的一些不足,于是就想写出来和大家分享一下, ...
- 5年Android程序员面试字节跳动两轮后被完虐,请查收给你的面试指南
大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助. 最近跟一个朋友聊天,他准备了几个月,刚刚参加完字节跳动面试,第二面结束后,嗯,挂了- 所以 ...
- 程序员快递请查收,来自Python黑客大佬的一份DDOS攻击说明书!
DDoS攻击没有我们想象中的那么简单,并不是什么Python程序员都能够做到的. 若要知晓黑客利用DDOS攻击原理那么我们必须要知道是实行DDoS攻击比较难的原因是什么? 很简单的一句话概括:&quo ...
- 本文详解5G是个什么鬼,程序员都准备好了吗?
无线移动通讯发展历史 最近5G的概念炒的如火如荼,为此,华为和高通还干了一仗.这篇文章从技术层面给大家分析,什么是5G,它和4G比,高级在哪里? 我们来看看移动互联网的技术发展: 然后我们在来看看他们 ...
随机推荐
- PDO::getAvailableDrivers
PDO::getAvailableDrivers — 返回一个可用驱动的数组(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0) 说明 语法 static array P ...
- 如何让img自动适应div容器大小
IMG样式 (横向拉伸,纵向自动匹配大小) width:100%; height:auto; (纵向拉伸,横向自动匹配大小) width:auto; height:100%; DIV样式(元素居中显示 ...
- 笨办法学习python3练习代码:argv参数变量与文件操作
ex15.py 完成ex15.py需要在ex15.py同文件夹目录下面准备一个txt文件(ex15_sample.txt) 执行ex15.py 如: python ex15.py e ...
- 当asp.net core偶遇docker一(模型验证和Rabbitmq 一)
比如我们有一些设计,依赖于某些软件,比如rabbitmq 当管理员功能,反复错误三五次之后,就发送一条消息到队列里去,我们又不希望对原先设计带来侵入式的改变业务 这个时候,我们就可以在模型验证里面加入 ...
- LInux下Posix的传统线程示例
简介 Linux线程是需要连接pthreat库,线程的使用比进程更灵活,需要注意的是线程间的互斥,或者说是资源共享问题. C++11之后,C++标准库也引入了线程,并且使用非常方便,以后再介绍,这里先 ...
- C语言学习笔记之进制之间的转换
这一篇主要是对进制之间转换的讲解,方便查看,以防忘记 二进制 逢二进一 八进制 逢八进一 以0开头, 0就是8进制的标志 十进制 逢十进一 ...
- Jenkins(Extended E-mail Notification)邮箱配置正确但是并没有发送邮件
废话 近期在把之前的接口自动化demo与jenkins集成,昨天发现了邮件配置正确但是没有发送邮件的问题,通过勾选系统设置 - >Extended E-mail Notification -&g ...
- BN系列-未完待续
BN.LN.IN.GN Cross-Iteration Batch Normalization 因为有时候我们的计算能力有限,所以BN设置的比较小,这样BN效果就比较差. 因此我们将最近几次的batc ...
- JavaScript Array.map + parseInt
map 生成新数组的函数,3个参数 1-currentValue, callback数组中正在处理的当前元素 2-index(可选): callback数组中正在处理的当前元素的索引 3-array( ...
- Linux学习笔记 一 第三章 Linux常用命令
第三章Linux常用命令 一.文件处理命令 1.命令格式 2.目录处理命令:ls 3.目录处理命令:mkdir 4.文件处理命令: touch