AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

工作之余加班加点开发的项目被 MD5“夺走”,两年诉讼终失败

  • 2021-06-18
  • 本文字数:2296 字

    阅读完需:约 8 分钟

工作之余加班加点开发的项目被MD5“夺走”,两年诉讼终失败

在家里花业余时间开发的软件


今年年初,英国的一名开发人员在与数字取证公司 MD5 的软件所有权争夺战中败诉。该软件是他在这家公司任职期间编写的。


该名开发人员叫 Michael Penhallurick,他声称在为 MD5 工作期间,在家里利用业余时间从事“虚拟取证计算”(VFC)软件的开发,并且他保留了软件的版权所有权,只是将其授权给了该公司。


然而,MD5 则声称,编写这款软件是公司与 Penhallurick 雇用关系的基本组成部分,也是为什么他每月可以获得 5000 英镑的酬劳,因为这个原因和其他一些因素(比如他签的协议),MD5 拥有了这份代码。


该软件主要供警方使用,让调查人员可以从缴获的硬盘中提取文件,并在虚拟机上查看,因此可以避免更改硬盘上的任何证据。


位于英国伦敦的知识产权企业法院在判决中支持了MD5,Richard Hacon 法官指出,MD5 和 Penhallurick 签署的一份合同实际上赋予了 MD5 对其发布和出售的软件的所有权。


Penhallurick 是一名前南约克郡警察,他说他的雇佣合同涉及到他在取证方面的专业知识,他最初被雇佣就是基于这一点。按照他的说法,他受聘“协助完成警方提供给 MD5 的案件取证工作,主要职责是进行取证电脑调查、准备证人供词、出庭和提供证据。”他还指出,他是在家里,花了很多业余时间,在自家的电脑上开发了这个软件。


与此同时,MD5 则辩称,Penhallurick 的职责“比这更灵活、更广泛”,而法官指出:“MD5 进一步表明,如果 Penhallurick 先生是在入职前创建了任何 VFC 软件,那么它就不属于为 MD5 创建的 VFC 软件的一部分。”


合同即法律


法官判定,事实是,每个人都知道 Penhallurick 在开发 VFC 软件,他创建了多个改进和增强版本,MD5 把这些版本出售,并付给程序员销售提成。


Penhallurick 于 2005 年开始开发 VFC,这是基于 3 年前他在克兰菲尔德大学(Cranfield University)攻读硕士期间进行的研究,他在 2001 年就已了解了 VMware 及其虚拟化工具。


当见到 MD5 的经理时,他概要介绍了他用来提取文件并在虚拟环境中进行查看的手工方法,并与 MD5 达成一致,开发可以自动执行该任务的软件,他也这样做了。他在 2006 年底加入了这个公司,到第二年,MD5 就开始向客户销售 VFC。


但在软件最终归谁所有的问题上,双方存在明显的分歧。MD5 认为自己拥有所有权,他们给 Penhallurick 发工资,并将销售收入的一部分作为报酬;Penhallurick 觉得最终他还是这个软件的主人。这种分歧使得 Penhallurick 和 MD5 在 2008 年签订了一份合同。根据合同规定,MD5 向 Penhallurick 发放 VFC 年度销售额 7.5%的奖金。2011 年,双方又达成了进一步的协议,将奖金额提高至 10%——Penhallurick 认为,这支付的是许可费,而不是奖金。


关键是,尽管 Penhallurick 坚称他是把软件授权给 MD5,但在案件审理过程中,没有证据表明存在这样的授权协议。与此同时,在与该应用程序绑定的最终用户许可协议中,MD5 是许可方,Penhallurick 已经认可了这种说法。


法官指出,这些合同没有一份是由律师起草的,留下了一些模棱两可的内容,最终导致了诉讼。他觉得,从多年来签署的各种文件中,可以很明显地看出,是 MD5 雇佣程序员开发并更新这款软件,该公司从第一个官方版本开始就拥有版权。


2016 年 Penhallurick 辞职,2018 年 1 月,MD5 停止向他支付代码费用,他们的关系彻底破裂了。这场争论却变得更加激烈,MD5 指控 Penhallurick 在离开公司时留下的是删除了某些功能的第三版软件,而且据称 Penhallurick 告诉第三方,MD5 没有该软件的版权。


但这些争议在法院的裁决中基本上被忽略了。在 7 月份的一场听证会之后,法院于 2 月 15 日公布了裁决结果,裁定 MD5 拥有已发布和售出的软件,并已向 Penhallurick 支付了费用,仅此而已。


这给所有软件开发人员上了有益的一课:如果你在做一个“个人项目”,务必检查下你的雇佣合同和员工权利,以确保你的工作成果最终不属于你的老板。


开发者的业余项目算谁的?


相信大家对 Nginx 之父 Igor Sysoev 被捕一案或多或少还有印象,当时 Sysoev 的老东家 Rambler 声称:Nginx 是 Sysoev 在 Rambler 公司任职期间开发的,所有权也应该是公司的。


事件发生时,同样在网络上引发了热烈讨论——开发者利用业余时间编写的软件到底属于谁?不同人有不同的观点。目前没有明确的统一的法律来判定,只是,员工和雇主一旦出现分歧,“视合同而定”的确是最有效的判断方式。


值得一提的是,从一个业余项目发展成为大公司的案例不在少数。Dropbox 的创始人 Drew Houston 在做 Dropbox 的时候任职于一家初创公司 Bit9,并曾表示“一些工作是在 Bit9 的办公室完成的”。辞职时他咨询了律师并得到了签名信,以表明 Bit9 在 Dropbox 中没有任何股权、所有权。


陈士骏是 Facebook 前 15 号员工,在脸书上班的时候消失了一段时间,回来工作后立刻辞职。离开脸书后,他创办了 YouTube。


程序员的业余项目,有助于提高员工自身能力的全面发展,也能一定程度的避免职业倦怠。有的公司对此持鼓励态度,比如微软有 moonlight 计划,支持员工业余做自己的项目,只要符合一定的要求就行,比如不能使用公司资产,不能与公司现有产品竞争以及不能有利益冲突等。作为员工,只要你别太过分,雇主一般不会纠结于你业余做了什么。


但将业余项目做大的开发者,还是会面临一些风险。项目吸引力越大,风险越大。当大企业诉诸法庭时,靠拖都能拖垮一家小企业。因此,开发者应该好好关注任职期间跟公司签约的合同上是否有明确说明“企业拥有员工在所有时间、所有地点所作出的所有项目的拥有权”。


那么,业余项目究竟属于开发者个人,还是属于开发者所在的企业呢?你留意过你的企业有这样的明文规定吗?如果是你遇到类似的情况,你会怎么做?


参考链接:UK dev loses ownership claim on forensic software he said he wrote in spare time and licensed to employer

2021-06-18 18:005308
用户头像
罗燕珊 AI practitioner | Tech media

发布了 523 篇内容, 共 382.1 次阅读, 收获喜欢 842 次。

关注

评论 3 条评论

发布
用户头像
业余时间开发的项目被公司夺走了,那这个业余时间算不算加班时间?我要求公司支付加班费不过分吧
2021-06-26 09:04
回复
这个说得在理
2021-06-29 13:42
回复
用户头像
签合同的时候要注意有没有这条:"企业拥有员工在所有时间、所有地点所作出的所有项目的拥有权”,如果有就得改了. 改不了就换公司吧,我们是去找工作的,有上班时间的雇佣关系,不是7x24小时的卖身关系。
2021-06-19 10:11
回复
没有更多了
发现更多内容

Apifox 2月版本更新:常用参数优化,自动化测试持续优化

Apifox

开发工具 Apifox 测试工具

Databend 开源周报第 133 期

Databend

软件测试学习笔记丨Docker容器镜像制作

测试人

软件测试 测试开发

一文搞懂设计模式—享元模式

Java随想录

Java 设计模式

朴素的DevOps价值观

华为云PaaS服务小智

软件开发 华为云

助力春节精准营销,火山引擎ByteHouse加速数据分析效率

字节跳动数据平台

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

获奖!科技进步奖一等奖!成果贡献奖金奖!

天翼云开发者社区

云计算 云服务 云平台

CSS图像边框:Interop 2023的一个重点领域

南城FE

CSS 前端 图像边框

终于有篇文章把后管权限系统设计讲清楚了

越长大越悲伤

Java spring 权限 权限控制 后台管理

Spring Security权限控制框架使用指南

越长大越悲伤

Java Spring Boot spring security

站在大模型加速带,重新审视办公提效

飞桨PaddlePaddle

百度 百度飞桨 AI应用 文心大模型 飞桨星河社区

第40期 | GPTSecurity周报

云起无垠

低代码平台运营效果评估模型:AICE

鲸品堂

低代码 企业号 2 月 PK 榜

智能护航:人工智能引领软件测试新革命

测试人

人工智能 软件测试

多租户篇 | MatrixOne与MySQL全面对比

MatrixOrigin

数据库 分布式 云原生

大数据时代来了

小齐写代码

教不会你算我输系列 | 手把手教你HarmonyOS应用开发

百度Geek说

HarmonyOS 鸿蒙开发 ArkTS

如何确保团队协作中,项目Node版本的一致性?

秃头小帅oi

node.js 团队协作 低代码

深入解析Python并发编程的多线程和异步编程

华为云开发者联盟

Python 多线程 开发 华为云 华为云开发者联盟

工作之余加班加点开发的项目被MD5“夺走”,两年诉讼终失败_安全_平川_InfoQ精选文章