程序员真的是吃青春饭的吗?(献给即将进入职场的程序员们)

又有学生问我:程序员真的是吃青春饭的吗?我是不是做到三十岁就该考虑转型了?

      我告诉他们:

      这是中国的记者们用统计数字造下的一个弥天大谎,当我们看到微软集团内的许多白发程序员在兢兢业业地工作的时候,我们又用"观念"来说明中国的程序员吃青春饭的原因。实际上,不仅美国的微软,甲骨文,Adobe,暴雪,在中国的金山,寰宇,腾讯,盛大,都有或者将要有年龄很大的程序员,关键是他们做的东西和那些"挨踢"们不同,他们做的是产品而不是项目。

       打个比方:微软为开发win98而雇佣了一名程序员,当win98推向市场开始盈利的时候,这名程序员不会被辞掉,因为发布出去的产品可能有bug,可能需要升级,这些都需要这名程序员去维护(新招一个的维护成本更高),于是这名程序员不会因做完一个产品而被"鸟尽弓藏",而是被充分利用起来,继续开发新的版本,这名程序员同时也能享受到产品盈利带来的利益。这样一个版本一个版本地做下来,虽然年龄大了,头发白了,但他会对这个产品更加熟悉,这是任何新手都无法超越的优势,而微软则会尽量用他直到他退休。(当年寰宇开发仙剑奇侠的团队,巨人开发征途系列产品的团队,金山开发剑侠情缘的团队除了自己创业的就根本没有人转型)

       另一个比方:某家项目型公司雇佣了一名程序员去开发一款电信的项目,当这个项目完成后,这名程序员的使命就完成了,顶多留下一两个核心成员进行维护。当项目的尾款全部到位后,连维护的人员都可以省略了。因为项目完了,钱拿到了,人就没用了,继续雇佣就是白拿工资了。当然,如果有新的项目,可以把这名程序员派到新的项目上,因为项目大多是竞标的,项目款是有上限的,除掉人员开销等开支就是公司的利润。所以这名程序员的工资向上的空间是有天花板的。当这名程序员年龄大了,加班加不动了,工资也涨到一定程度了,好,新人的成本更低,精力更旺盛,虽然经验欠缺点,但只要有一定经验的人带着,就可以组成一个阶梯式团队,可以以更物美价廉的组合去开发新的项目,这里没有工资高,年龄大,精力不济的老手的位置,该裁员了。

       08年金融危机,各大IT企业裁掉的绝大多数都是外包或项目型团队。像巨人,盛大,腾讯等产品型公司虽然也传出过裁员消息,但裁掉的大多是推广,渠道等非技术型团队,2011年腾讯在大规模裁撤测试人员的情况下还继续加大了在开发,产品,设计等岗位的校园招聘。一般来讲,除非一家公司改变思路,下决心砍掉某款产品,否则他就必须保护参与这款产品的开发人员。

      那么做项目的程序员就没出路了吗?就必须到35岁转型吗?也不是,做项目的如果专注与技术,而这项技术又是别人极少掌握的,那么可以靠这个一招鲜做到退休。大多数项目型程序员最好的办法是积累某一行业的行业背景,比如:做电信的无论跳槽还是外包尽量只做电信的项目,做银行的尽量只做银行的项目,那么十年后,你所积累的深厚的行业背景知识就是你做到退休的最好保证,因为那是任何新人无法取代的。现在需要转型的那些"挨踢"几乎全是在年轻时代跳来跳去,哪里有项目就去哪儿,哪里钱多就去哪儿,到年龄大了才发现自己会的就那些东西,没有什么可凭借能扎下根来的东西。

       所以,能够"靠"到一款好产品或"靠"到一个好行业是一个程序员可以安身立命的终极法则。

       而能够做到上述两点的程序员在中国实在是太少了,中国的大公司大多是项目型公司,他们接项目,做项目,项目多了扩大规模,没项目了缩减规模。程序员们或者自己跳,或者"挨踢",哪里钱多去哪儿,漂泊到三十好几,终于知道自己该有个稳定的地方了,但做完一个项目又找下一个项目的职业稳定不下来,怎么办?转型,于是做了不少项目,终于人老珠黄,青春献给IT,铸造了程序员吃青春饭的律条。

       按照上面的分析,新入职场的程序员们该知道怎么办了。趁青春还在的时候,找准方向,扎根于一个长远的行业或有前景的产品,那么你的未来就无忧了。

       以此献给刚入职场的新程序员们。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537452.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这一年多来,阿里Blink测试体系如何从0走向成熟?

2019独角兽企业重金招聘Python工程师标准>>> 摘要: 引言 Apache Flink是面向数据流处理和批处理的分布式开源计算框架,2016年阿里巴巴引入Flink框架,改造为Blink。2017年,阿里整合了所有流计算产品,决定以B…

numpy中一些常见计算

文章目录 numpy中的一些常见计算代码方差标准差参考文献numpy中的一些常见计算 代码 import numpy as np from scipy import stats# 示例数据 data = np.array([1, 2,

system函数_自学C++基础教程【函数】

函数的概念一个函数由:函数的返回值类型、函数名、参数表、函数体 这4个部分组成。int Add( int _a , int _b ) {return _a _b; }该函数 Add 完成对两个整型数据的求和功能。函数的调用方式: 函数名(参数表);…

宁波政务云资源的介绍与申请

介绍 如图所示: 宁波政务云分公共服务区与资源共享区。 公共服务区 公共服务区,一般部署允许互联网访问的系统,数据不敏感,不重要的,可对外开发的系统。 该区允许互联网访问,不允许访问资源共享区&…

redis查数据

1 连接服务 12345[rootredis1-20 ~]# telnet 127.0.0.1 6380Trying 127.0.0.1...Connected to 127.0.0.1.Escape character is ^].#用telnet也能登录,但是无法查看key的value12[rootredis1-20 src]# ./redis-cli -p 6380#redis可能有好几个服务,要指定端…

python帮助文档在哪_python文档在哪里

对于Python中一些不清楚的模块,可以通过文档学习如何使用,但是python文档在哪里呢?这个问题我们可以使用Python命令进行查看。方法一 在python命令行输入以下内容help(time) # 很详细的模块文档 help(time.localtime()) # 很详细的函数文档 h…

政务云公共服务区与资源共享区数据交换的方式

上文《宁波政务云资源的介绍与申请》介绍过,公共服务区与资源共享区是不能互访的,只能是资源共享区单向访问公共服务区。 我有一项目,要能互联网访问,又要访问“宁波大数据共享平台”的接口,“宁波大数据共享平台”在…

Java程序员的IntelliJ IDEA使用教程

前言 博主是Java程序员,以前一直都用myeclipse来开发的,说实话感觉myeclipse毫无美感可言,后来经过同事介绍,认识了IDEA,一眼就相中了IDEA黑色的主题风格,自此就抛弃了旧爱myeclipse。当时还不懂IDEA功能上…

python中random函数用法_random函数的用法

展开全部 用法: 1、随2113机生成(0,1)之间的浮点数 random.random() 2、随机生成100-200的整数5261 random.randint(100,200) 3、随机产生范围为410210间隔为2的数 random.randrange(0,11,2) 注:这里输出(0,2,4,6,8,10…

提防易怒的危机

我工作多年,多年来认识一些官场、商场的人。 我与他们相处时,深深体会到太忙、太累的主管,常呈现的状态是“易怒”。 这些人精神绷得太紧,体力透支,睡眠不足,开会太久,长期都在赶进度。 易怒…

2018-2019 ACM-ICPC Pacific Northwest Regional Contest (Div. 1)

2018-2019 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) 思路: A Exam 思路:水题 代码: #include<bits/stdc.h> using namespace std; int main(){int k;scanf("%d",&k);char s1[1010],s2[1010];scanf("%s%s",s1,s2);int same0;int ns…

python random()*10的值不可能是_Python

Python 生成随机数、随机字符串 #!/usr/bin/python # -*- coding: UTF-8 -*- import random import string # 随机整数&#xff1a; print random.randint(1,50) # 随机选取0到100间的偶数&#xff1a; print random.randrange(0, 101, 2) # 随机浮点数&#xff1a; print rand…

Prince2与PMP的区别

p2有7个原则&#xff0c;7个主题&#xff0c;7个流程&#xff0c;即37二十一。 P2有26个管理产品模板。 2009版本是经典版本&#xff0c;2017版本与2009版本内容基本没变&#xff0c;梳理了目录&#xff0c;使内容更加有可读性。 P2是非常好的项目管理方法论&#xff0c;任何…

html实体编码_深入研究浏览器解析和XSS有效负载编码

翻译文章&#xff0c; 原文&#xff1a;Deep dive into browser parsing and XSS payload encoding[1]这篇博客文章将深入探讨HTML&#xff0c;URL和JavaScript的规范和解析器&#xff0c;以及它们之间的交互如何在跨站点脚本转义中有所作为。对于您而言&#xff0c;这可能很难…

2021-02-03-延长一天时间的有效方法

方法1&#xff1a;给对的事情花时间 分清事情轻重缓急&#xff0c;做了对的事情会让人感到开心。有个原则&#xff0c;就是事后回想这件事&#xff0c;会让自己感到开心。 比如玩了一晚上游戏和学习&#xff0c;可能更多人的开心是后者。 比如健身运动与长时间学习&#xff…

[洛谷P1341]无序字母对

题目大意&#xff1a;给一张无向图&#xff0c;找一条字典序最小的欧拉路径 题解&#xff1a;若图不连通或有两个以上的奇数点&#xff0c;则没有欧拉路径&#xff0c;可以$dfs$&#xff0c;在回溯时把这个节点加入答案 卡点&#xff1a;没有在回溯时加入答案&#xff0c;导致出…

产品部门四大角色——PM/PD/UE/UI

按照产品从规划到最终成型的任务流方向&#xff0c;从抽象到具体、商业到技术的过程&#xff0c;涉及产品经理、产品设计师、用户体验师、视觉设计师四个角色。 PM&#xff1a;产品经理&#xff0c;俗称老大。一个产品&#xff0c;首先由PM来分析细分市场、目标客户的诉求&…

拉取远程分支_git clone切换分支步骤,代理设置,作者信息设置

1.克隆远程仓库git clone git地址2.查看所有分支git branch –a3.切换分支git checkout branchName4.查看当前所在分支git branch5.拉取代码git pull6.提交代码git add file/folder git commit -m comment git push可能遇到的问题&#xff1a;A.error: fatal: unable to acce…

[学习笔记]半平面交

一个直线把平面分成两部分&#xff0c;就是两个半平面 处理这两个平面的交的信息&#xff0c;就是半平面交 推荐&#xff1a; 计算几何之半平面交算法模板及应用 bzoj 2618 半平面交模板学习笔记 【总结】半平面交 可以用于求任意多边形交&#xff0c;任意多边形内核。 &#x…

Project计算项目进度

1.设立根节点 2.资源列表 3.资源成本 4.基准 在任务分配状况 视图里&#xff0c;添加“基线工时”“实际工时”“BCWS(计划&#xff09;”“ACWP(实际&#xff09;”“BCWP&#xff08;挣值&#xff09;”&#xff0c;“SV(>0 提前&#xff0c;<0 延后&#xff09;”、…