Before You Start
Roles in Open Source

Beginner vs Contributor vs Maintainer

ℹ️

Understanding the Hierarchy

Open source has a clear (but rarely documented) hierarchy. Knowing where you areβ€”and where you're goingβ€”helps you navigate the community.

The Open Source Ladder

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                        OPEN SOURCE HIERARCHY                                β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                             β”‚
β”‚    ⭐ BDFL / PROJECT LEAD                          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Final say on everything                      β”‚ 1-2 people      β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚    ───────────────────────────────────────────                              β”‚
β”‚                                                                             β”‚
β”‚    πŸ›‘οΈ CORE MAINTAINERS                             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Write access, release management             β”‚ 2-10 people     β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚    ───────────────────────────────────────────                              β”‚
β”‚                                                                             β”‚
β”‚    πŸ‘₯ REGULAR CONTRIBUTORS                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Consistent, trusted contributors             β”‚ 10-50 people    β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚    ───────────────────────────────────────────                              β”‚
β”‚                                                                             β”‚
β”‚    🌱 OCCASIONAL CONTRIBUTORS                      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Sporadic PRs, still learning                 β”‚ 50-200 people   β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚    ───────────────────────────────────────────                              β”‚
β”‚                                                                             β”‚
β”‚    πŸ‘€ FIRST-TIME CONTRIBUTORS                      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Just getting started                         β”‚ Hundreds        β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚    ───────────────────────────────────────────                              β”‚
β”‚                                                                             β”‚
β”‚    πŸ‘οΈ USERS / LURKERS                              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚       Use but don't contribute                     β”‚ Thousands+      β”‚     β”‚
β”‚                                                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”‚                                                                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Role Breakdown

πŸ‘€ First-time Contributor

What you can do:

  • Submit PRs
  • Open issues
  • Comment on discussions
  • Ask questions

What you can't do:

  • Merge PRs
  • Close issues
  • Manage releases
  • Make project decisions

Typical signs:

  • No previous PRs to the project
  • Questions about basic conventions
  • Learning the codebase

How to level up:

  • Get your first PR merged
  • Respond quickly to feedback
  • Be humble and grateful
  • Read all documentation

🌱 Occasional Contributor

What you can do:

  • Everything above, plus:
  • Reference past contributions for context
  • Participate in design discussions
  • Help answer newcomer questions

Typical signs:

  • A few PRs merged (2-5)
  • Known to some maintainers
  • Understanding of project conventions

How to level up:

  • Contribute consistently (monthly+)
  • Take on bigger issues
  • Help with code reviews (even without merge rights)
  • Build relationships with maintainers

πŸ‘₯ Regular Contributor

What you can do:

  • Everything above, plus:
  • Get assigned to issues directly
  • Influence technical decisions
  • Review PRs (reviews carry weight)
  • Mentor newcomers

What you can't do:

  • Merge PRs
  • Close/manage issues
  • Release management

Typical signs:

  • Consistent contributions over 6+ months
  • Deep knowledge of part of the codebase
  • Maintainers know you by name
  • Your PRs get faster reviews

How to level up:

  • Express interest in maintainership
  • Take ownership of a subsystem
  • Help with project management
  • Be reliable and responsive

πŸ›‘οΈ Core Maintainer

What you can do:

  • Everything above, plus:
  • Merge PRs
  • Close issues
  • Manage releases
  • Set project direction
  • Add new maintainers

Responsibilities:

  • Review PRs from others
  • Maintain CI/CD
  • Security patches
  • Community management
  • Documentation
  • Backward compatibility
⚠️

Maintainership is a Burden

Being a maintainer is mostly unpaid work. You'll spend more time reviewing others' code than writing your own. Only pursue this if you truly care about the project.


Progression Timeline

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                        TYPICAL PROGRESSION TIMELINE                         β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                             β”‚
β”‚  USER ─────────────────────────────────────────────────────────────────────►│
β”‚    β”‚                                                                        β”‚
β”‚    β”‚ [1-4 weeks]                                                            β”‚
β”‚    β–Ό                                                                        β”‚
β”‚  FIRST-TIME CONTRIBUTOR ───────────────────────────────────────────────────►│
β”‚    β”‚                                                                        β”‚
β”‚    β”‚ [1-3 months]                                                           β”‚
β”‚    β–Ό                                                                        β”‚
β”‚  OCCASIONAL CONTRIBUTOR ───────────────────────────────────────────────────►│
β”‚    β”‚                                                                        β”‚
β”‚    β”‚ [6-12 months]                                                          β”‚
β”‚    β–Ό                                                                        β”‚
β”‚  REGULAR CONTRIBUTOR ──────────────────────────────────────────────────────►│
β”‚    β”‚                                                                        β”‚
β”‚    β”‚ [1-2+ years]                                                           β”‚
β”‚    β–Ό                                                                        β”‚
β”‚  CORE MAINTAINER ──────────────────────────────────────────────────────────►│
β”‚                                                                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
TransitionTimeRequirements
User β†’ First Contributor1-4 weeksOne merged PR
First β†’ Occasional1-3 months3-5 merged PRs
Occasional β†’ Regular6-12 monthsConsistent contributions, relationships
Regular β†’ Maintainer1-2+ yearsDeep trust, proven reliability

How Maintainers See You

Based on your GitHub profile and activity, maintainers quickly categorize you:

Green Light βœ…

You have:

  • Previous merged PRs (anywhere)
  • Thoughtful issue comments
  • Complete PR descriptions
  • Responsive to feedback

Yellow Light ⚠️

You have:

  • New account
  • No previous contributions
  • Generic PR description
  • Unknown quantity

Red Light 🚫

You have:

  • Hacktoberfest spam history
  • Abandoned PRs
  • Argumentative comments
  • AI-generated contributions

Informal Roles

Beyond the official hierarchy, there are important informal roles:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    INFORMAL ROLES                               β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                 β”‚
β”‚  πŸ” THE BUG HUNTER                                              β”‚
β”‚     Files detailed, reproducible bug reports                    β”‚
β”‚     Doesn't fix them, but makes them fixable                    β”‚
β”‚                                                                 β”‚
β”‚  πŸ“ THE DOCUMENTARIAN                                           β”‚
β”‚     Keeps docs up to date, writes guides                        β”‚
β”‚     Often underappreciated but invaluable                       β”‚
β”‚                                                                 β”‚
β”‚  🌍 THE TRANSLATOR                                              β”‚
β”‚     Translates docs and UI                                      β”‚
β”‚     Opens project to new communities                            β”‚
β”‚                                                                 β”‚
β”‚  πŸ’¬ THE ANSWERER                                                β”‚
β”‚     Monitors Stack Overflow, Discord, Discussions               β”‚
β”‚     Reduces maintainer burden significantly                     β”‚
β”‚                                                                 β”‚
β”‚  πŸ“’ THE EVANGELIST                                              β”‚
β”‚     Gives talks, writes blog posts                              β”‚
β”‚     Brings new users and contributors                           β”‚
β”‚                                                                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
πŸ’‘

Non-code Contributions Matter

Every role above is valuable even without writing a single line of code. Many maintainers started in these roles.


Quick Assessment: Where Are You?

  • I have merged at least one PR to this project
  • Maintainers recognize my username
  • My PRs get reviewed within a week
  • I'm sometimes tagged on relevant issues
  • I help review other people's PRs
  • I have write/merge access to the repo

0 checked: You're a user or lurker 1-2 checked: First-time / Occasional contributor 3-4 checked: Regular contributor 5-6 checked: Core contributor / Maintainer