Established | Advanced | Expert | |
---|---|---|---|
Writing Code |
Effective Coder
|
Solid Developer
|
|
Problem Solving |
Individual Troubleshooter
|
Effective Troubleshooter
|
|
Documentation |
Documentation Contributor
|
Good Documenter
|
Guide Builder
|
Open Source Maintainer |
Package Contributor
|
Package Maintainer
|
- Established: All OS developer advocates and developer educators will demonstrate or quickly grow into established expertise in these important areas.
- Advanced: All OS developer advocates and developer educators will develop multiple advanced skills over time. It is not expected any single individual master all advanced skills, but rather to build a portfolio of advanced skills that fits their own professional goals and their team’s needs.
- Expert: Posit developer advocates and developer educators who demonstrate expert mastery of skills will be rare, and these are intended to identify truly exceptional proficiency.
Skill/Aptitude | Established | Advanced | Expert |
---|---|---|---|
Writing Code | Effective Coder You are able to write code for data science analyses and/or package development. You are aware of, and usually use, good coding practices and current tools. |
Solid Developer You demonstrate fluency, efficiency, speed, and quality in work. You can be counted on to deliver well on work similar to past work. You understand and utilize basic testing strategies. You demonstrate confidence with one or two technology platforms. |
|
Troubleshooting | Individual Troubleshooter You are able to diagnose many issues in your own code. You effectively ask questions, and for help and support when needed. You can act on feedback to improve your code. |
Effective Troubleshooter You are able to diagnose problems in your own or others’ code using a number of troubleshooting techniques and tools. You are confident soliciting reprexes from end users. |
|
Documentation | Documentation Contributor You know the principles of good documentation. You review existing documentation and make changes or provide feedback to improve the quality of the documentation. |
Good Documenter You consistently document features and code that you’re working on. Your documentation is clear and concise and is of real assistance to later developers. |
Guide Builder You create and maintain documentation for multiple packages. Your documentation is user-centered and provides ‘how tos’ along with feature descriptions. If submitting to CRAN, your vignettes are clear, useful, and meet user needs. You create and maintain documentation for an ecosystem and/or set of related packages. Your documentation is used widely in teaching and learning. |
OS Maintainer | Package Contributor You contribute to open source packages. You are able to answer some questions from users in github issues and PRs. You provide feedback on packages, installation and ease-of-use to other developers. |
Package Maintainer You understand the process of updating and delivering new versions of the packages you are working on. You understand how merging and branching is handled, as well as the basic release process. |