编者按:俗话说,家有一老如有一宝。但这句话放在IT行业似乎是无效的。扎克伯格在22岁的时候大声说出了整个软件业的想法:“年轻人就是更聪明些。”所以一旦过了30岁,还在写代码的“老家伙”就慢慢消失了。在MangoDB工作的资深程序员A. Jesse Jiryu Davis是幸运的一员,已经40岁的他还可以在公司内选择新的发展道路,但是很多上了年纪的程序员都已经被迫改变职业。难道IT业真的只需要年轻人吗?这个行业是不是应该给经验丰富的老程序员更多的机会?Davis在题为“ Ctrl-Alt-Delete: The Planned Obsolescence of Old Coders ”的文章中提出了这个问题。这个问题值得所有从业人员思考,包括年轻的那些,因为你们也会变老。
image被遗忘的群体
每一年,600名编码者都会聚集到纽约参加一场名为PyGotham的会议展开研讨。组织者很清楚技术业的男性化和白人化程度,所以他们采取了特别的努力,希望能招募到一个多元化的演讲阵容。他们在邮件列表上向编码的女性和有色人群推广此次会议,还为从事技术的女性准备了一个研讨会,鼓励她们发表演讲。组织者让演讲者填写一份人口调查表,好让他们能跟踪会议在多元化方面的进展情况。
我在这项会议的委员会任职,在今年的PyGotham结束后,我意识到有一个群体我还没有专门付出过努力:这个群体就是老程序员。相对于女性和少数族裔在技术业的名额不足,40岁及以上的程序员之稀少基本上没有引起过大家的注意。纽约没有专门为这帮人准备的Meetups或者邮件列表,也没有专注于该群体的突出的倡导组织。虽说我打算明年找些老程序员到PyGotham上演讲,但我还并不知道去哪儿找这样的人。
年轻是软件业压倒一切的主题。Google和Amazon员工的年龄中位数为30岁,而美国工人的年龄中位数是42。2018年Stack Overflow对全球100000名程序员的调查发现,其中3/4都是35岁以下的。Hacker News上定期就会有帖子冒出来发问,“那帮老程序员去哪里了?”大30好几的焦虑开发者就会插话进来,自认为自己就是“老家伙”的一员。
去年的10月份,我已经迈入40的年关,我曾经在纽约的一家叫做MongoDB的数据库公司干了7年。我这个年龄的程序员很多都已经回到学校转换职业或者成为经理了。我致力于一生都做程序员,但我未来几十年的职业道路应该怎么走还不是很明显。我认识的年纪比我大的、可以为我做榜样的工程师数量之少令人不安。那帮老程序员都到哪里去了?我们这些剩下的人的职业前景又会怎样?
年轻人就是更聪明些
2007年,当时22岁的扎克伯格大声说出了整个软件业的想法:“年轻人就是更聪明些。”12年后,对为什么老程序员那么少的研究相对于其他多元化的研究依然很少。比方说,Google每年的多元化报告计算的只有女性或少数族裔的员工数量。微软统计了自己雇佣的美洲印第安人和阿拉斯加原住民的数量,苹果为自己雇退伍老兵感到自豪。这些公司公布了一些多元化方面的指标值得表扬,但有一点遗漏:这些公司均未报告过自己员工的年龄分布情况。
Ari Rapkin Blenkhorn是一名47岁的工程师。她说自己离开了上一份全职工作是因为公司想要“一堆廉价的年轻人。他们不想再支持更多职业稳定的资深人士了。”她的老板很重视她的职业关系网,但是又不想通过派她参加会议的方式对这个关系网进行投资。“我认为他们其实不理解。不理解为什么这一点很重要,或者我出席研究型会议跟菜鸟开发者出席技术培训有何不同。”
Blenkhorn说一旦自己重返求职市场,她遇到的就不仅有年龄歧视,也包括性别歧视。尽管自己取得了不小的技术成就,但因为自己的“妈妈”身份以及被招聘的看作无关紧要和无聊而被摒弃。她最近取得了计算机科学的博士学位,希望这种教育背景能改善自己在求职市场的机会。
55岁的程序员Kevin Stevens 6年前到Stack Exchange申请工作时也面临着类似的态度。面试他的是一位年轻工程师,对方告诉他,“我总是很奇怪为什么老程序员还在这行呆。”Stevens被拒掉了。他现在在一家酒店当程序员,因为对方认为他的年龄不是问题。
对于其他的程序员来说,结果会糟糕得多。2018年,ProPublica的Peter Gosselin 和Ariana Tobin对IBM的年龄歧视进行过一项调查,结果发现大约从2014年开始,该公司就试图通过用年轻员工取代老员工来重塑自我。该公司一边裁掉了数千的老员工,一边强制其他人退休。有一位60岁的系统工程师叫做叫做Ed Kishkill收到了裁员通知,并且被告知还有3个月时间在IBM另寻一份工作。尽管他有几十年的经验,但是去其他部门找工作时却全部被拒了。等到ProPublica的文章发表时,Kishkill已经在Staples当起了店员。
技能更新太快
要想当一辈子的程序员,你得与时俱进,保持技能更新,但在一个不断变革的行业他们得跟时间赛跑。据2018年的一份研究论文,科学、技术、过程以及数学(STEM)方面的工作变化相对于其他行业发生得更快,而且程序员的变化率尤其严重。论文作者之一Kadeem L. Noray说“STEM相对其他领域对技能的要求更高,”更重视短暂的竞争而不是持久的智慧。STEM专业人士每学习每一种新技能,就会有一种旧的技能变得过时,导致几乎没有什么机会去积累技能和提高薪水。
尽管技术业的起薪高是出了名的,但这个行业在雇佣的头10年相对其他领域的优势却要减半。Noray说:“这个东西是大多数经济学家都不知道的。” 2017年Hired.com的一份报告发现,为50岁以上技术员工提供的薪水其实要低于给年轻人的。因此,很多STEM员工会为了工资增长的可持续而换成变化慢一点的职业。24岁这个年龄有84%的STEM专业能找到STEM类工作,但到了35岁时,这个数字就降到了71%,并且一路走低。
image2017年技术员工年龄 vs 薪水方面的数据。由Hired.com提供
有一个办法可以让码农跳下不断学习技能的跑步机同时还能留在技术行业,那就是当经理。麻省一位54岁的工程师告诉我,“我的公司给新人留出了一条很明确的道路:以开发者的身份加盟公司,然后慢慢爬到管理岗位。”
但管理并不是对每个人都合适。54岁的Sue LoVerso 是MongoDB的资深员工,他告诉我,“经理需要具备一些性格特征,但我很内向,而且解决技术问题才是我感兴趣的。”一位63岁的Google工程师说自己当过一小段时间的经理,但是觉得很不舒服:“我知道靠自己可以干完一件事,但我不知道如何去靠别人完成工作。”
个体贡献者
除了走管理这条路以外,Google、微软等大公司还提供了另一条职业发展路径,那就是所谓的“个体贡献者”,资深工程师可以沿着这条跟管理阶梯平行的职称晋升。个体贡献者这条路径可以让工程师爬到资深岗位又不需要放弃自己热爱的手艺。
但这条路是有瑕疵的。我对话过的程序员说走这条路晋升的速度更慢,而且不同头衔之间的区别其实很模糊。据MongoDB 45岁的工程师David Golden说,“我走开发这条路晋升到下一个级别会遇到更大的障碍。你不知道怎么才能从一个岗级晋升到另一个岗级,也不知道自己对此可以做什么事情。”
基于对5、6个程序员的采访,在我看来显然企业应该为自己最资深的个体贡献者提供定性上完全不同的角色。就像经理一样,此类角色的候选人可以通过其过去的效能来进行判断,而不是按照日新月异的技能清单来判断。角色定义更清晰意味着工程师可以更快地晋升,而每一个岗级的声望和知识更新挑战会让程序员保持动力,一直干到5、60岁。
占据了最资深角色的应该是久经考验的工程师,他们应该用来解决最关键项目当中最棘手的问题。他们的角色应该通过写作、演讲和传授来强调技术领导力。
因为其深厚知识与丰富经验,老程序员可以将他们的知识转化为平时的语言,充当向非编程界布道的大使。在特效工作室Industrial Light and Magic 领导一个服装仿真项目时,Ari Blenkhorn就担任了这样的角色。她说:“尤达的长袍,哈利波特的魁地奇斗篷,摄魂怪的长袍——这些全都是我帮助开发出来的软件创作出来的。我需要同时用物理仿真研究团队和动画团队的语言去讲话。他们不会去考虑偏微分方程的事。他们只关心衣服的柔滑度和弹性以及风中的涟漪。”
对老程序员好一点
我是幸运的:我的公司对人近中年的我以同理心予以回应,让我可以展开职业探索之旅。今年,我可以去到3个团队分别试几个月来确定自己想干什么样的工作。
别的公司可能就没那么大方了。我尤其担心这个行业年纪大一点的女性和有色人种,因为他们可能要面对多种偏见。公司必须为走个体贡献者这条道路的程序员定义有实际意义的岗级。与此同时,程序员应该更主动些,组织起来敦促公司与年龄偏见作斗争。工会可以制订薪水标准,保护资深员工不被裁员;这么做还会缩小不同种族和性别的工资差距。
让软件界对30岁以上的程序员表现出多一点欢迎,为非常有经验的程序员创造合适他们的角色,这些举措会让公司更有效率,也更加公平。这些改变还会让我们其他人收益——在日益被软件和算法统治的社会里,程序员必须获得一些智慧来匹配他们的权力。他们必须从最近的黑客攻击、带偏见的算法,以及网上山东种族灭绝等事故中吸取教训。唯一的办法是让来程序员在这个行业呆得足够长,将他们的知识传递给后继者。培养终身程序员可确保今天学到的经验教训50年后依然被铭记。
小编整理的一整套系统的python学习教程从最基础的到框架再到项目实战的学习资料都有整理,送给每一位小伙伴, 有想学习python编程的,或是转行,或是大学生,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。
加Q群:7119,44363(招募中)
网友评论