Technical Expert
The GovStack project relies upon the collaboration of a team of experts to ensure that the specifications meet its mission.
In the context of development of the specifications, the Technical Expert role is separated from that of a Contributor in that the Contributor proposes a change and a Technical Expert assess that change but it is quite possible that they are often the same person fulfilling both roles. When such a situation exists, and it will do so quite often, the project needs to ensure that no changes are made completely without collaboration of one other person - the Technical Expert should always call in for a review by another Technical Expert or Contributor.
It is perfectly possible for one Building Block to have two Technical Experts and/or a Technical Expert to cover more than one Building Block.
Note that the Technical Expert role gives their expert opinion on proposed changes, this does not necessarily mean they have the final say on what changes are made. That responsibility is taken by the Commit Leads and directed by the Product Owner. Of course, this should be a rare event.
Responsibilities
To always follow the GovStack Code of Conduct
To set the overall direction of an area of the project, usually a Building Block, for which they have responsibility
To review and assess proposed changes/additions made via the Jira issue queue and give helpful feedback to Contributors in a timely fashion
To participate in events organised by Triage Leads that help Contributors make useful contributions.
Actions
The aim of the processes here are to keep the actions required by Technical Experts quick to enact as their time is often in short supply.
The Technical Expert primarily acts reactively to events in the Jira issue queues:
An issue is flagged for Technical Expert attention
The Technical Experts should monitor the list of issues for the tag “For review by Technical Expert” and respond to those which fall under their area of expertise. Any Contributor is able to tag an issue for review but it is primarily the Triage Lead who will do so, after ensuring all the necessary information is in the issue.
The Technical Expert will review each issue tagged for attention by:
Checking that the issue has a understandable title
Checking that the issue description explains the problem, the proposed change (and any alternative options), and provides a justification for how the change improves the specification
Checking that the proposed change meets the Quality Criteria that the GovStack project places upon content in the specification
The issue may already contain a link to either a GitBook Change Request or a GitHub Pull Request. The Technical Expert may decide to edit these directly and note that they did so in a comment on the issue or suggest changes for the Contributor to make in the issue comments
Where a Change Request does not already exist, the Technical Expert may decide to make one themselves, adding a link to it in the comments of the issue
Where further work is needed on the issue by the Contributor, the Technical Expert will give feedback in the issue comments to be worked on by the Contributor. The Technical Expert should consider best practices for giving feedback especially around “saying no”. Hint - it’s okay to say no…
Where an issue has met all of the above criteria, it is ready to be committed to the Development space. Tag the issue as “For review by Commit Lead” so that it will be merged/committed by someone with commit access in their space.
When there are no issues requiring attention
Whilst in this model there is no direct requirement for Technical Leads to hold regular online meetings, they may decide that this is something they wish to do. When meetings happen is this way, it is of paramount importance that any feedback or decisions made are documented in the issues relevant to the discussions, so that all Contributors can participate equally, whether they are able to attend the meetings or not.
The Technical Experts have a key role in setting the direction of the specifications and attendance of the Technical Committee is the key way to enable this.
Governance
Technical Leads are appointed by the Technical Committee. They may or may not be paid any one of the partners and that may affect the amount of time they can dedicate to processing issues.
The Technical Committee may appoint a Technical Expert on a temporary basis.
Why be a Technical Expert?
Technical Experts are key to everything that takes place in the GovStack specifications. They will be asked to contribute to every proposed change in every issue the project handles and, therefore, will be recognised as a prolific contributor to the specifications.
When the GovStack project is looking for people to represent the project at events, or to consult on system being built, it is to the Technical Experts they turn to. Being recognised as a Technical Expert can lead to many opportunities.