【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

在象牙塔里写代码:高学位、低收入,软件还必须“高质量”

  • 2022-06-05
  • 本文字数:2665 字

    阅读完需:约 9 分钟

在象牙塔里写代码:高学位、低收入,软件还必须“高质量”

整理|燕珊


2012 年 3 月,一群志同道合的软件开发者聚集在牛津大学并参加了一个研讨会,这群开发者的职业的共同之处是:通过写代码/开发软件来支持科学研究。但他们的职位各有不同,而且没有清晰的职业道路,于是这群人创造了一个术语来描述自己的工作:研究软件工程师(research software engineer,以下简称“RSE”)。


十年后的今天,RSE 社区已经遍布英国、欧洲、澳大利亚和美国。谢菲尔德大学 RSE 小组负责人、英国研究软件工程协会前任主席 Paul Richmond 在接受《自然》杂志网站采访时指出,尤其在英国,至少有 31 家大学拥有自己的 RSE 小组,这表明这一工作的重要性日益增加。


但从现实的角度看,在互联网高速发展的时代,作为 RSE 在学术界能赚到的钱,也往往不如在科技大厂里做一名码农来得多。《自然》的这篇内容也因此在 Hacker News 上炸出了好多 RSE 们现身说法。

RSE 是做什么的?

本质上,RSE 做的事情就是建立软件来支持科学研究。但他们通常没有自己的研究问题——他们是通过开发软件工具来帮助其他人做很酷的事情。因此,他们每个人做的事情并不绝对,比如为现有的软件增加功能,解决 bug,又或者从头开始建立一些东西。但他们并不只是坐在电脑前写代码,写代码只是 RSE 角色的一部分,他们必须是良好的沟通者,能够将自己融入到一个团队中。


按照 Richmond 的说法,几乎每一个科学领域都需要运行软件,因此 RSE 会发现自己几乎可以从事任何工作。在 Richmond 的职业生涯中,他一直致力于开发用于成像癌细胞和模拟行人交通的软件。作为博士后,他其实从事的是计算神经科学的工作。“我对这些特定的研究领域了解不多,因此我需要与肿瘤学家或神经科学家或任何人密切合作以开发所需的软件。”


最初许多 RSE 都是博士生或博士后,他们从事软件工作以支持自己的项目。但他们意识到,比起实际的研究工作,他们更喜欢这部分工作。因此,RSE 肯定具备在工业界工作的技能,但他们选择了在学术界的前沿科学环境中茁壮成长。


“当然,博士学位不是必要的。”Richmond 说,“我鼓励任何对研究感兴趣的有经验的开发人员考虑将 RSE 作为一个职业。”

缺乏相应的认可和奖励

RSE 工作的一个重点是开发高质量的软件。但 Richmond 坦言,在过去,研究人员并不被激励去使用或创造好的软件。好消息是,这个情况正在发生变化。“许多期刊现在要求研究人员公开软件代码,而且需要遵循 FAIR 原则:可查找、可访问、可互操作和可复用。最后一个词非常重要:好的软件是研究‘可复用’的一个重要组成部分。”


Richmond 强调,他希望可以看到 RSE 在学术环境中是平等的。软件贯穿整个研究过程,但教授往往才是获得大部分认可和声望的那个群体。实际上软件可以产生与某些研究论文一样大的影响,甚至是更重要的角色。如果 RSE 能够获得他们应得的认可和奖励,那么 RSE 这个职业将会更有吸引力。


Richmond 的这些话透露了 RSE 职业存在认可和奖励不足的现实问题。而在技术论坛上,不少人随之对学术界展开抱怨。


一名自称在生物科学领域有 10 年以上经验的研究工具开发者分享道,自己的实验室制造了最先进的显微镜、硬件和图像分析软件,他也觉得学术界的工作确实很棒,能与来自世界各地的非常有趣的人一起工作,对项目也拥有完全的创意控制权。但在薪酬、期望和福利方面,永远不会得到像软件行业那样的高回报,当超过 30 岁时,可能仍在支付进入这个领域所需的学生贷款,而且仍然住在同一个糟糕的公寓里。“学术界,至少在生物科学领域,仍然是一座象牙塔。”


有人直言,“在学术界工作的一个严重现实是,你基本上是以较低的报酬为业界工作,而他们有一天会转过身来,拍拍你的肩膀,然后以数百万美元的价格出售你的工作。”“说实话,你越是接近应用领域,情况就越糟糕。在那里,你已经跨越了你的更‘纯粹’(和收入较少)的同行所认为的‘科学界限’,但实际上做出的东西将使人们的生活更美好。由于这也更靠近能看到你的工作是如何使别人发财的地方,就会很难让人不想跳槽,去成为另一头赚得盆满钵满的人。说实话,这是个令人不安的情况。”


也有人认为是关于地位的问题,“RSE 总是被认为不如研究人员(研究科学家),他们据称提出了“大创意”,而 RSE 只是执行被告知要做的事情。实际上,这条线要模糊得多。没有想法的实施就没有创新和迭代,RSE 工作同样重要。但除非这种观点改变,否则没有人愿意成为 RSE。”

RSE 职业发展还任重道远

“离开学术界后,我工作量变少,得到的报酬更高。在一个人屈服之前,理想主义可以持续很长时间。”


不少观点均指出,从职业道路选择和竞争性薪酬的角度来看,RSE 这个职业很难有好的前景。“如果你拥有材料科学、物理学、化学、生物学等方面的博士学位……并且对 Python(或类似)有相当的了解,也许可以花一年的时间做博士后。在那一年之后,认真考虑转到一家科技公司。”


但也有人对学术界始终抱有憧憬:“我放弃了对对抗性算法和生成对抗性网络的研究生研究,因为我意识到我可以得到 6 位数的报酬来制作商业软件并利用空闲时间做任何我想做的事情。像许多其他潜在的有前途的学术软件工程师一样,我有一个家庭要抚养,我要过上自己的生活。科学确实需要更多的研究软件工程师,但在科学能够支付软件工程师至少基本的最低收入之前,这种情况不会改变。当这种情况发生变化时,我会考虑从我离开的地方再度开始。


另一方面,有观点不认为科学家需要研究软件工程师。“PI(首席研究员)通常喜欢承担项目中的任何角色,包括软件设计。他们不喜欢交出事情并让人们构建现代的最佳实践软件。你开始谈论源代码控制、包管理器、工业中使用的一种他们甚至从未听说过也不太关心学习的语言等等,然后你就会被问到‘为什么你不能直接用 Python 或 C 编写,因为这是我唯一熟悉的两件事,然后将其压缩并放在 USB 驱动器上’。”


学术界还是工业界,这个问题始终没有固定答案。不少人指责学术界普遍存在资金不足且官僚作风的问题,一位自称在学术界和工业界都待过的 PI(首席研究员)直言,前者可以通过拨款申请来解决,后者必须被容忍,直到政治家/活动家解决它。他进一步解释道:学术界的钱和奖励在大多数情况下不受 PI 的控制(例如在德国,这是政府层面的决定,每个人的报酬都是一样的),所以他们往往有两种选择:与普通人共事或找到既聪明且有理想主义的人......


同时,该 PI 在评论区顺带发布了一则 RSE 招聘,寻找愿意与之一起使用最佳实践(尤其是使用 Rust)构建研究软件(本地和 AWS 云)的人。一位用户随之留言打趣道,这很可能就是当前难以招到 RSE 的最佳证据。


参考链接:

https://www.nature.com/articles/d41586-022-01516-2


https://news.ycombinator.com/item?id=31577376

2022-06-05 18:183778
用户头像
罗燕珊 InfoQ中文站编辑

发布了 424 篇内容, 共 245.1 次阅读, 收获喜欢 757 次。

关注

评论

发布
暂无评论
发现更多内容

屌的一批!阿里P8推荐的Spring Cloud实战笔记

小小怪下士

Java 微服务 SpringCloud

共建清洁能源岛!华为中国数字能源旗舰峰会海南站盛大举行

Geek_2d6073

算法题每日一练:连续子数组的最大和

知心宝贝

数据结构 算法 前端 后端 三周年连更

Neural Filters神经滤镜插件如何安装?PS神经滤镜插件安装教程

互联网搬砖工作者

Spring Cloud Stream:打造强大的微服务事件驱动架构

做梦都在改BUG

Java 微服务 spring cloud stream

厦门等保备案平台是哪个?多久可以办好?

行云管家

等保备案 厦门

c4d R2023 让您的三维动画设计更简单~~

真大的脸盆

Mac Mac 软件 三维动画设计 动画设计工具

【获奖案例巡展】信创先锋之星——江西金发基于分布式数据库的互联网金融业务系统

星环科技

分布式数据库

超级App的构建与技术驱动

没有用户名丶

Flink 2.0 启航,开启全新篇章

Apache Flink

大数据 flink 实时计算

火山引擎 DataLeap 下 Notebook 系列文章三:架构升级详解

字节跳动数据平台

大数据 架构 数据治理 运维‘ 企业号 4 月 PK 榜

最佳实践|如何写出简单高效的 Flink SQL?

Apache Flink

大数据 flink 实时计算

Photoshop崩溃怎么办无法打开 Photoshop

互联网搬砖工作者

支持多模型数据分析探索的存算分离湖仓一体架构解析(下)

星环科技

湖仓一体

【获奖案例巡展】科技向善之星——中航电梯5G+大数据管理平台

星环科技

大数据管理

【获奖案例巡展】信创先锋之星——浙江省某市区视频能力中心

星环科技

大数据

内蒙农信携手星环科技建设农信大数据平台,激活金融业务创新

星环科技

数据要素流通

【获奖案例巡展】信创先锋之星——中信证券基于国产图数据库构建企业图谱的应用实践

星环科技

国产数据库

【获奖案例巡展】信创先锋之星——甘肃省住房和城乡建设厅住建数据大脑

星环科技

数据超脑

SBOM喊话医疗器械网络安全:别慌,我罩你! Part Ⅰ

安势信息

网络安全 SBOM 医疗器械 SBOM应用

华为云联合多家单位正式开源云原生多沙箱容器运行时Kuasar

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

临沂等级保护测评机构有几家?在哪里?

行云管家

等保 等级测评 临沂

高性能、快响应!火山引擎ByteHouse物化视图功能及入门介绍

字节跳动数据平台

大数据 数据仓库 云原生 Clickhouse 企业号 4 月 PK 榜

CutMix&Mixup详解与代码实战

华为云开发者联盟

人工智能 华为云 数据增强 华为云开发者联盟 企业号 4 月 PK 榜

软件测试/测试开发丨Docker 容器技术与常用命令

测试人

Docker 软件测试 自动化测试 测试开发

iOS描述文件(.mobileprovision)一键申请

雪奈椰子

开心档之C++ STL 教程

雪奈椰子

支持多模型数据分析探索的存算分离湖仓一体架构解析(上)

星环科技

湖仓一体

什么是存算分离架构?

星环科技

存算分离

火山引擎DataTester智能发布平台:智能化A/B实验,助力产品快速迭代

字节跳动数据平台

大数据 AB testing实战 A/B 测试 企业号 4 月 PK 榜

用C++编写一个简单的发布者和订阅者

华为云开发者联盟

开发 华为云 华为云开发者联盟 企业号 4 月 PK 榜

在象牙塔里写代码:高学位、低收入,软件还必须“高质量”_文化 & 方法_罗燕珊_InfoQ精选文章