Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

This is mechanism by which people involved in OpenMRS Development can progress from a new community member (/dev/null) to a leader (/dev/5) as their contributions and engagement with the OpenMRS community progresses. The purpose of developer stages is to help clarify where people are in their journey, motivate people to become increasingly engaged, and help us recognize when people are becoming more engaged with OpenMRS Development. Developer stages are  not meant to create a bureaucratic process around community privileges.

 

StageCriteriaExpectationsPrivilegesExample Role(s)

/dev/null

"Community"

  • Be or desire to be a developer
  • OpenMRS ID
  • Introduced

How to Earn: See /dev/null badge on Talk

Community members are expected to be nice. We're all in this together!

  • Can communicate well and show respect for others
  • Willing to be opened
  • Chat with devs on IRC
  • Can become a /dev/1
  • Claim an intro ticket (or a non-intro ticket with assistance from a /dev/2+)
  • Submit a pull request
  • Take Introductory Quiz
  • Community Member

/dev/1

"Learning"

  • Development Environment
  • RTFM
  • Claim ticket
  • Pull Request Submitted
  • Pass 5-10 question Introductory Quiz

How to Earn: See /dev/1 badge on Talk

A learner is expected to have engaged with OpenMRS development.

  • Has tackled at least one intro ticket
  • Can write a unit test
  • GSoC
  • Post to dev list
  • Propose topic(s) on Dev Forum(s)
  • Wiki Editor
  • Intern

/dev/2

"Contributing"

  • Helps others
  • Participate in Dev Forum(s)
  • Active ≥3 months
  • Resolved ≥10 tickets

How to Earn: Send a message to current /dev/2 members on Talk.

A contributor is expected to be making meaningful contributions to the community, but is not expected to be thinking about needs beyond their own or their organization.

  • Can handle low complexity tickets
  • Has tackled at least 10 tickets
  • Can create a module
  • Has pair programmed
  • Claim low-to-moderate complexity tickets
  • Curate tickets
  • Publish a module and resources to Maven repo
  • Migrate a repo following our code of conduct
  • Manage a release
  • Developer on Sprint

/dev/3

"Cooperating"

  • Curates ticket(s)
  • Working with others
  • Hugged by an implementation

How to Earn: Send a message to current /dev/3 members on Talk. 

A cooperator is expected to be thinking beyond their own needs or their organization's needs, including how their contributions affect others in the community and helping coordinate community contributions.

  • Can handle moderate complexity tickets
  • Can function independently, yet looks for opportunities to pair program
  • Code review
  • Configure CI
  • Lead Sprint
  • Push to module(s)
  • Spike for community
  • Initiate a maintenance release
  • Technical Lead for Sprint
  • Spike Developer
  • Release manager

/dev/4

"Collaborating"

  • Perform at least one Spike for the community
  • Leading Dev Forum(s)
  • Leading Sprints
  • Overseeing code reviews
  • Hugged by ≥2 implementations
  • Has publicly thanked at least 10 other devs

How to Earn: Send a message to current /dev/4 members on Talk.  

A collaborator is expected to be investing in coordination of efforts across the community to help create community benefits that go beyond the sum of the pieces. Usually, a collaborator depends on the work of other organizations or other organizations beyond their own are depending on their efforts.

  • Can handle complex tickets
  • Finds effective ways for developers across organizations to work together
  • Occasionally leading the Community Development Swim Lane.
  • Push to core

/dev/5

"Leading"

  • Responsible for a component
  • Mentoring other devs
  • Engages with implementation(s)

How to Earn: Send a message to current /dev/5 members on Talk.  

Leaders are expected to be significantly invested in the community, helping drive changes that benefit the community, and mentoring others.

  • An OpenMRS jedi
  • Leading development
  • Finds ways to make local implementation development benefit the community and community development benefit local implementations.
  • Occasionally leading the Community Development Swim Lane.
  • Accomplishing more through guiding/helping other devs than on their own.
  • Can establish coding conventions
  • Can deprecate services
  • Participate in OpenMRS leadership discussions
  • Participating in repo management
  • Overseeing one or more community objectives
  • No labels