写点什么

工作之余加班加点开发的项目被 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:005242
用户头像
罗燕珊 AI practitioner | Tech media

发布了 503 篇内容, 共 346.9 次阅读, 收获喜欢 808 次。

关注

评论 3 条评论

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

TiDB 和 Java 的简单 CRUD 应用程序

TiDB 社区干货传送门

TiFlash Proxy 模块介绍

TiDB 社区干货传送门

对话ACE第五期:到底什么才是真正的HTAP?

OceanBase 数据库

PingCAP Clinic 服务:贯穿云上云下的 TiDB 集群诊断服务

TiDB 社区干货传送门

什么!阿里最新版Spring Cloud Alibaba项目文档,竟将重要组件弃用

收到请回复

Java spring 阿里巴巴 面试 spring-cloud

一对一直播软件——如何实现音视频传播?

开源直播系统源码

软件开发 直播系统源码 一对一语音聊天软件 语音直播系统

当内卷风波及代码领域,看Alluxio将会采取怎样的块分配策略

Alluxio

腾讯 存储 Alluxio block 8月月更

离线部署系列文章之二:TiDB集群升级(5.3.0->5.4.2)&缩扩容 TiDB Server、PD、TiKV、TiFlash

TiDB 社区干货传送门

版本升级 集群管理 管理与运维 安装 & 部署

魅族高校新生充电计划进行中,直播课让科目一新生直呼厚道

Geek_2d6073

传统堡垒机数据可以迁移到云堡垒机上吗?方式有哪些?

行云管家

云计算 网络安全 堡垒机

某站下载量过W的近4000页“Java面试合集”号称大厂面试零门槛

收到请回复

Java 程序员 面试 金九银十

希捷亮相OCP China Day 2022,与生态伙伴共话绿色存储之道

Geek_2d6073

优雅,永不过时!SpringBoot中这样编写Controller层代码,那叫一个完美

Java永远的神

Java 程序员 面试 程序人生 springboot

故障处理 | DM 搭建 MySQL 8.0 同步链路报错:code=26005

TiDB 社区干货传送门

安装 & 部署 TiDB 源码解读

如何在 TiDB Cloud 上使用 Databricks 进行数据分析 | TiDB Cloud 使用指南

TiDB 社区干货传送门

TiDB 和 Golang 的简单 CRUD 应用程序

TiDB 社区干货传送门

离谱!这份笔记及实战手册帮助你四天快速上手SpringSecurity

了不起的程序猿

Java springsecurity java程序员 框架

如何在企业数字化团队内部实现数据分析建模成果的结构化整合沉淀

ModelWhale

工作流 数字化转型 数字化 案例分享 提高效率

离线部署系列文章之一:TiDBv5.3.0集群部署&源码部署 Haproxy v2.5.0

TiDB 社区干货传送门

实践案例 版本升级 管理与运维 安装 & 部署 扩/缩容

多并发下线程创建、释放的阻塞问题

TiDB 社区干货传送门

采访22年第一批秋招上岸的同学后,我整理了这份Java面试手册

Java面试那些事儿

Java 编程 程序员 架构 面试

Go-Excelize API源码阅读(十四)——GetSheetFormatPr

Regan Yue

开源 源码刨析 Go 语言 8月日更 8月月更

如何让 TiDB 集群管理“更省心”?TiUniManager(原 TiEM)使用教程来了

TiDB 社区干货传送门

手把手教你实现 TiFlash 向量化函数丨十分钟成为 TiFlash Contributor

TiDB 社区干货传送门

HarmonyOS Connect FAQ第四期

HarmonyOS开发者

HarmonyOS

大数据训练营毕业总结

Geek_Q

20万字的《Kafka运维实战宝典》PDF现在免费下载了

石臻臻的杂货铺

大数据 kafka

云堡垒机主要针对运维过程中的什么进行管理和审计?

行云管家

运维 堡垒机 IT运维 云堡垒机

五天玩转EMAS Serverless

云端explorer

云计算 Serverless emas

基础到高级涵盖11个技术,Alibaba最新出品711页Java面试神册真香

收到请回复

Java 大数据 架构 编程语言 语言 & 开发

利用现有数据库管理系统创建一个安全的分布式数据库集群

亚马逊云科技 (Amazon Web Services)

大数据 分布式 Tech 专栏

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