开发组招募新成员,主要目的是让对软件开发感兴趣的同学参与真实项目,在协作中学习和积累经验。相比已经掌握多少技术,我们更看重好奇心、学习意愿、责任感,以及遇到问题后愿意继续探索的态度。
如果你已经有较成熟的开发经验,也欢迎加入项目、分享经验,和我们一起改进现有系统。
- 维护和改进学校的 OJ 系统,包括:
- 前端
- 后端
- 评测系统
- 开发其他对同学有帮助的工具和服务。
- 参与真实项目,积累从需求讨论、开发、代码审查到文档维护的经验。
- 学习使用 Git 和 GitHub 与其他成员协作。
- 在实践中加深对软件开发、计算机网络、数据库和 Linux 等内容的理解。
- 完成能够实际服务同学的项目成果。
- 大一同学应基本掌握以下至少一种语言:
- C/C++
- JavaScript/TypeScript
- Python
- Go
- 加入后的两个月内,大一同学需要基本掌握 C/C++ 或 TypeScript;已有相应基础的同学应达到熟练使用的程度。
- 其他年级的同学应熟练使用 C++ 或 TypeScript。
- 代码应保持整洁、易读,并愿意根据反馈修改。
- 能够主动沟通进度、问题和时间安排。
熟悉计算机网络、数据库、Linux 或信息安全等内容会有帮助,但不是申请的硬性条件。
以下内容会根据项目和个人方向逐步学习,不要求申请时全部掌握,也不要求每个人同时学习所有方向:
- 使用 Git 管理代码,并通过 GitHub 协作
- 使用 Markdown 编写文档,按需学习 LaTeX
- 计算机网络、数据库和信息安全基础
- Linux 基本操作、Shell 脚本和 systemd 服务配置
- Node.js、JavaScript/TypeScript、Vue、SQL、Redis 及相关工具
- OJ 评测系统、Linux C API 等底层开发内容
目前项目主要使用 C/C++ 和 JavaScript/TypeScript。具体技术栈以所参与项目为准。
- 学习阶段:自主学习或参考组内提供的大纲,每两周汇报一次学习进展。
- 项目阶段:以课余时间为主,安排相对灵活;具体投入随项目阶段而定。无法按计划完成时,请及时与其他成员沟通。
- 在本仓库新建 Issue。
- 选择“开发组申请”模板,填写自我介绍、技术基础、项目经历和希望参与的方向。课程作业、个人项目和正在学习的内容都可以写。
- 提交后等待开发组成员回复。通过的申请会标记为
Accepted,未通过的申请会标记为Rejected。
本仓库和 Issue 均为公开内容。请不要填写手机号、私人邮箱、学号、住址等敏感信息。需要确认身份或交换联系方式时,我们会另行沟通。