For the individuals & teams that we support, we want to know:
- What skills do they have?
- What skills do they think they need?
- What is the team's capacity to deliver on projects requiring specific skills, tools, or languages?
User Stories:
As a WMF Product or Technology team member,
I want to understand the breadth and depth of skills/tools/coding languages of individuals and teams,
So that when we assign work to teams that requires special expertise, we ensure that team has the required expertise,
And we can better understand training needs on our teams,
And we can better align owners/maintainers to our tools, services, and workstreams.
As a WMF Product or Technology team member,
I want to understand the skills/tools/coding languages in which I need experience & expertise,
So that I can provide value to my team and be successful in my roles/responsibilities.
Acceptance Criteria:
- A document (your choice of an internal Google doc/sheet, or a public-facing wiki page) that includes:
- A list of skills/tools/coding languages that the team thinks are relevant/valuable to the team.
- Node.js is a required line item
- A team-wide assessment of its skill/capacity for each item on the list created in the previous bullet. This should be the average of individually-assessed skill levels for all engineers for each item. If a team has already completed this on the individual level, help teams convert that to a team-level assessment by averaging the scores.
- Recommendation to work in partnership with managers to gather individual team members' skill assessments in order to help mitigate cognitive biases inherent to self-assessments (e.g., a manager may be able to help identify situations where their report's subjective assessment of their skill level in an area is not aligned with their objective performance).
Skill levels should be standardized as follows:
Numeric Value | Skill Level | Definition |
1 | Minimal | New to you, or rudimentary comprehension |
2 | Basic | Developing comprehension, gaining applied experience (not necessarily on Wikimedia projects) |
3 | Intermediate | Deepening comprehension, applied experience on 1+ Wikimedia projects |
4 | Advanced | Deep comprehension & applied experience within Wikimedia context; have not provided training to others |
5 | Expert | Deep comprehension & applied experience within Wikimedia context; have provided training to others |
Optionally, consider including:
- Skills/tools lists and assessments for UX Designers, Design Researchers, Community Relations Specialists, Program Managers, Product Managers
Simple Example:
Skill/tool | Team Average |
CSS | 4 |
Docker | 5 |
JavaScript | 4 |
MediaWiki Action API | 5 |
MediaWiki production deployment | 3 |
MySQL | 4 |
Node.js | 4 |
PHP | 4 |
Phabricator | 5 |
Puppet | 4 |
Python | 3 |
React | 4 |
Testing strategy | 3 |
Unit testing | 4 |
Vue.js | 4 |
Examples & Resources:
- TEMPLATE Engineering Skill Matrix
- https://www.mediawiki.org/wiki/Core_Platform_Team/Skill_matrix
- https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Skill_matrix
- https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Skill_matrix/Template
- https://office.wikimedia.org/wiki/HR_Corner/Programming_languages
Please check when complete and provide link(s) to page(s):
- @LGoto
- Android https://docs.google.com/spreadsheets/d/1cWK6Iq7Ho_wx77EowHia_MngScUZVMSIFXzaWT1Vq1k/edit#gid=1660581101
- iOS https://docs.google.com/spreadsheets/d/1gfNS9bfOqNg_F8kVVgJygkxqtxBFNic2vPYAYAHrhak/edit#gid=1660581101
- Web (DRAFT) https://docs.google.com/spreadsheets/d/1n1bUAT8XaFShbNjWixlZP09D0JdqWzIadNZId2t-Cds/edit#gid=1660581101
- @JMcLeod_WMF
- @ldelench_wmf
- Campaigns
- Design Systems
- @MShilova_WMF
- @MaryMunyoki
- @CBogen