Google Go 工程师辞去工作转行成为全职开源维护者,同时为多个需要专业开源维护者的企业提供服务,报酬总额和 Google 工作相当。表明悄然兴起全职开源维护者薪酬竞争力完全不输职业软件工程师。美国瑙鲁大学和巴西联邦大学(UFPE、UNIFESP、UTFPR)的论文《What Makes a Great Maintainer of Open Source Projects?》 对 Linux、Debian 和 GitLab 经验丰富的维护人员进行了 33 次访谈,对 90 个 OSS(Open Source Software) 贡献者进行了评级调查。发现:沟通被认为是优秀维护者最重要的属性,其次是品质保障
。
- 为了维持项目的长期愿景,维护者最终应该定义路线图、委派任务并处理文档。 在基于志愿者的工作中,必须仔细考虑这些活动,以免影响工作和生活的平衡。
- 极其谨慎/礼貌似乎是鼓励和指导新贡献者的基石。 为了建立他们的信心,维护者应该
愿意倾听和交谈
,这反过来会让他们从另一个人的角度思考。 - 为了拥有支持决策的高技术知识,维护人员应该了解应用领域,了解项目的技术,并具有实施质量流程以执行代码审查和遵循项目质量标准的经验。
- 为了促进开放式创新,保持对项目目标的关注和在社区中建立真理,维护者应该突出奉献精神,坚持长期合作,并确保
非敌对环境
。
优秀开源维护者有哪些特征?
管理:
积极
:尽可能回答问题。纪律
:确保流程、指南和行为准则尽可能得到遵守。愿景
:描述一个项目在未来如何发展,并为此做出计划。善文
:强调文档化软件的重要性。项目管理
:能够领导一个团队的工作,以实现更大的目标。可持续性
:促进项目实现其目标,在变化中生存,并随着时间的推移融入新的需求。透明
:提供和传播有关项目的所有上下文。
社交:
沟通
:具有以明智的方式交换信息的能力。社区建设
:帮助和激励新成员继续参与项目。同理心
:能够理解和分享他人的感受。领导力
:为项目和社区提供指导,授权他人做出贡献和做出决定。方法论
:教别人基本的贡献步骤,例如,如何参与、如何走完或如何发现问题。共赢
:与利益相关者(例如,上游和下游开发人员)保持良好的关系。
技术:
领域经验
: 拥有项目领域的经验。质量保证
: 保持项目所需的质量水平,关注开发周期的每个阶段。技术卓越
: 在努力提高代码质量的同时不断学习新技能。
自驱:
动力
:精力充沛,渴望在项目上工作。思想开放
:愿意倾听和考虑新想法。耐心
:容忍延迟/麻烦而不生气。自信
:相信自己的能力或品质。勤奋
:为一个目标认真、执着地工作。责任
:对项目有承诺和自觉的奉献精神。