如何参与开源项目

大家好,受卡哥邀请,和大家分享一下开源活动的相关经验。首先简要自我介绍一下,我目前在一所985研二在读,主要学习大数据方向,从去年开始参与开源活动近一年时间,也对多个Apache框架有所贡献。

由于学校或专业的要求,在校生都有可能面临无法线下实习的问题。而参与开源活动可以不受时间和地点的限制,同时给自己的简历不错的提升,深度参与知名开源社区的建设,给个人简历的提高并不低于大厂实习。

在近来的暑期实习中,我成功拿到了腾讯、字节等多家大厂的offer。以我个人面试的经验看,所有的面试都被问到开源经历(包括HR面),大约一半的面试会涉及个人的实习经历和项目经历。在校招面试中八股和算法是必不可少的,但常见的八股文和top100算法题掌握的同学不在少数,如何在行情比较差的当下脱颖而出,主要在于和面试官是否有深度的项目经历进行聊天,相比于烂大街的项目,尤其是自己写的项目容易被面试官看成玩具,开源项目还是加分不少的,而通过对Apache框架的贡献更能体现个人的工程能力,作为你的代码能力证明,面试官可以根据你贡献PR直接看到你的能力水平,更多纬度地评价你的个人能力。另外如果深度参与了某个Apache框架社区,你一定会了解该社区解决了哪些业务痛点,未来要做哪些新的功能特性,较高的深度会引起面试官的兴趣多进行倾听,同时工作多年的面试官肯定对你遇到的业务痛点深有同感,觉得你所做的是有价值的,在接下来的面试中就不会再难为你。

介绍了很多参与开源的好处,也推荐一些参与开源的好方式。如果你是第一次参与开源,建议找到感兴趣的Apache社区中的Good First Issue来入手,其中都是一些难度较低的入门类工作,专为新手参与社区而准备。但很多社区并没有对应的Good First Issue,这时建议可以参与国内的一些开源活动,例如GSOC和OSPP等,刚好现在4月份OSPP即将开放申请,贴一下具体的链接供大家参考:开源软件供应链点亮计划-开源之夏2023​ 可以按照自己擅长的语言和方向进行具体社区的选取,然后申请投递即可。

开源贡献具体会经历以下几个步骤:

1.发现问题或自荐 feature ,也可以在issue模块中找到别人提出的问题进行解决。

2.从官方仓库fork 源码到本地仓库。

3.本地进行代码的开发和自测,开发过程中可以多参考社区类似的代码,往往都会有代码风格的要求。

4.发起 pull request 请求合入代码。

5.等待社区大佬进行code review 。

6.根据reviewer的建议调整代码。

7.审核通过,合并进 master 分支,完成贡献。

最后为我们社区Apache Seatunnel打Call一下,主要做分布式数据同步相关,具体内容可以参考:Apache SeaTunnel | Apache SeaTunnel​ 如果刚接触开源并且对该方向有兴趣,也欢迎私信我帮你推荐合适的新手任务,尽可能确保第一次代码可以成功合入,成为Apache的贡献者之一。如果有什么问题也欢迎大家留言提问。

相关推荐
明志数科2 小时前
手持式机器人数据采集方案的生态化演进:从开源工具到数据交易
机器人·开源
神奇霸王龙2 小时前
GB/T 46886 闭环屠夫:5 旗舰多模态 LLM 工业质检实测
人工智能·计算机视觉·ai·开源·ai编程·本地部署
冬奇Lab3 小时前
开源项目第165期:superfile — 颜值与效率并重的现代终端文件管理器
开源·资讯
fthux4 小时前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
杨充7 小时前
11.DDD与战术建模
设计模式·开源·代码规范
杨充7 小时前
12.综合实战图片框架
设计模式·开源·代码规范
DisonTangor8 小时前
【微软开源】Mage-Flow 深度解读:微软4B参数图像生成与编辑模型,单卡A100仅需0.59秒
人工智能·microsoft·ai作画·开源·aigc
microrain13 小时前
从硬编码到热插拔:SagooIoT插件架构如何打破物联网平台的扩展瓶颈
物联网·golang·开源·sagooiot
java_logo14 小时前
Docker Compose 部署 Apache Superset:轻松搭建开源 BI 平台
docker·开源·apache·superset·轩辕镜像·superset部署方案·docker superset
千桐科技15 小时前
DataX 执行引擎正式加入:qData 开源版 v1.6.0 新增 Quartz + DataX 轻量运行模式!
java·大数据·开源·数据治理·数据中台·qdata