diff --git a/en/SUMMARY.md b/en/SUMMARY.md index 753d849e3f10..241614d8a901 100644 --- a/en/SUMMARY.md +++ b/en/SUMMARY.md @@ -657,6 +657,7 @@ * [External Position Estimation (Vision/Motion based)](ros/external_position_estimation.md) * [DroneKit](robotics/dronekit.md) * [Contribution (&Dev Call)](contribute/README.md) + * [Maintainers](contribute/maintainers.md) * [Dev Call](contribute/dev_call.md) * [Support](contribute/support.md) * [Source Code Management](contribute/code.md) diff --git a/en/contribute/README.md b/en/contribute/README.md index adb96aeb1f81..fa4292afb60d 100644 --- a/en/contribute/README.md +++ b/en/contribute/README.md @@ -11,6 +11,7 @@ This code aims to foster an open and welcoming environment. ::: This section contains information about contributing to PX4, including the source code, documentation, and translations, and their relevant licenses. +* [Maintainers](./maintainers.md) - Maintainers of PX4 Subsystems and Ecosystem * [Dev Call](../contribute/dev_call.md) - Discuss architecture, pull requests, impacting issues with the dev team * [Codeline Management](../contribute/code.md) - Work with PX4 code * [Documentation](../contribute/docs.md) - Improve the docs diff --git a/en/contribute/maintainers.md b/en/contribute/maintainers.md new file mode 100644 index 000000000000..da89079adac2 --- /dev/null +++ b/en/contribute/maintainers.md @@ -0,0 +1,92 @@ +# Maintainer Role + +[PX4 maintainers](#role-description) have technical leadership and responsibility for specific areas of PX4, and for other ecosystem components such as MAVSDK, and QGroundControl. + +The maintainer role is defined by the community with help and supervision from the [Dronecode Foundation](https://www.dronecode.org/). +A detailed description can be found in the [role description](#role-description) section below. + +To find the most up-to-date maintainers list, visit [PX4-Autopilot README](https://github.com/PX4/PX4-Autopilot#maintenance-team). + +## Maintainers Call + +The weekly maintainers call discusses overall PX4 structure, community and ecosystem. +You can find the relevant information below: + +* Time: Tuesday 17h00 CET ([subscribe to calendar](https://www.dronecode.org/calendar/)). +* Place: [Dev-Call-Maintainers channel in Discord](https://discord.gg/RjxYXFSnj3). +* Meeting note is published week before in [Discuss Forum - PX4 Coordination](https://discuss.px4.io/c/weekly-dev-call/px4-dev-call/39). + Attendees are encouraged to add to the agenda as a reply before the meeting starts. +* To nominate Issues and PRs for the call you can use the [maintainers-call](https://github.com/PX4/PX4-Autopilot/labels/maintainers-call) label to flag them + +## Recruitment Process + +If you would like to join the PX4 maintainers team: + +1. Read the [role description](#dronecode-maintainer-role-description), and make sure you understand the responsibilities of the role. +2. To nominate yourself, reach out to one of the maintainers (see the complete list in the [PX4-Autopilot README](https://github.com/PX4/PX4-Autopilot#maintenance-team)), and seek their sponsorship. +3. Express your interest in becoming a maintainer, and specify which area you would like to maintain. +4. Your sponsoring maintainer needs to bring this up for discussion in one of the [weekly maintainers calls](#maintainers-call). + The maintainer team will vote on the call to accept you as a maintainer. + +## Onboarding Process + +Maintainers go through the following onboarding process: + +1. **Discord** server admin will grant you the `dev team` role, which gives you: + 1. Permission to speak during maintainers call. + 2. Access to the `#maintainers` channel. + 3. Access to the user group / dronecode member companies channels. +2. You will be given access to the GitHub team: "[`Dev Team`](https://github.com/orgs/PX4/teams/dev-team)" which grants you: + 1. Permission to merge the PR of any of PX4 workspace repositories after it's approved + 2. Permission to trigger GitHub actions when a new contributor opens a PR. + 3. Permission to edit Issue/PR contents. +3. **Dronecode member** (Junwoo/Ramon) will: + 1. Include your information on the PX4 [README](https://github.com/PX4/PX4-Autopilot/blob/main/README.md) next to the rest of the team + 2. Listed on the [Maintainers section](https://px4.io/community/maintainers/) of the PX4 website. + 3. Add your information to the internal Dronecode database of maintainers to keep you in sync. + 4. Create a social media post about your new maintainers role after a short interview. + +## Dronecode Maintainer Role Description + +### Summary + +Dronecode Maintainer will lead/manage the development of a **specific category (referred as category below)** of the PX4 ecosystem. With this role, you will be at the epicenter of developing the world’s top most popular flight control software system! + +### Responsibilities + +1. Take charge of overseeing the development in their category. +2. Provide guidance/advice on community members in their category. +3. Review relevant pull requests and issues from the community on GitHub. +4. Coordinate with the maintainer group. +5. Keep regular attendance at the [maintainers meeting](#maintainers-call). +6. Help create and maintain a roadmap for the project your represent. +7. Uphold the [Code of Conduct](https://github.com/Dronecode/foundation/blob/main/CODE-OF-CONDUCT.md) of our community. + +### Qualifications + +1. Proven track record of valuable contributions. +2. Domain expertise in the category field. +3. Good overview of the project you are applying to. +4. You need to manage approval from your employer when relevant. + +### Perks + +1. **Official recognition** as the maintainer in Dronecode/PX4 website, documentation, community and social media. +2. **Github & Discord privileges** (described in the [onboarding process](#onboarding-process)). +3. Priority placement to the yearly **PX4 Developer Summit** scholarship which helps you cover travel. + +### Tools we Provide to Assist You + +Dronecode will provide the following tools to help you: + +1. **Flight testing**: If you need a tester for your feature, we can find them and provide you with feedback/logs. +2. **Release schedule**: Clear timeline of upcoming releases, feature freezes to help you decide on deciding on development process. +3. **Community survey**: If you need any insight into the community's opinion, we will send out social media posts, mailing lists, announcements in Discord server to get that answer for you. +4. **Workflow automation**: We will provide workflow for PR/Issue review & tagging process to help you. + +And as always, don't hesitate to reach out if you need help with anything. We are here for you! + +### Point of Contact + +Regarding questions about the maintainer role, please contact the maintainer team. +The easiest way to do this is to join a weekly [maintainers meeting](#maintainers-call).