TechnoSpective (Technical Retrospective)
The Background
With more and more adoption of agile, the term “Retrospective” has become popular and definitely it helps to ideate and introspect some of the key things like what went well, what did not , what were the blockers and lessons learnt , so that we can keep up the Continuous Improvement. But there is a catch. Tell me — how many times you have seen that the retrospective is documenting the technical knowledge and technical lessons learnt while working throughout the sprint. The answer is may be very less or no since most of the times we are focused on to highlight our overall success and failures in front of various stakeholders like Product Owners, Tribe Mangers. The developers get more inclined to highlight their great contribution to the sprint as part of “What went well” and to stress on blockers to justify on what did not. Though we add some notes under “Lessons Learnt” but they are mostly non-technical in nature and rather process oriented rather than technology. The key reason is that the “Retrospective” is mostly run by the “Scrum Master” and in most cases the SM is not that technical and the honorable guests like Product Owners and Tribe Managers are also not that much technical in nature in most of the organizations. So while we are in the world of technology, doing technical work, learning new technology , tools and delivering new technical things they are missed to get recorded as part of sprint “Retrospective” .
What is a TechnoSpective
This gives the opportunity to introduce a new type of agile ceremony called “Technical Retrospective” or “TechnoSpective” which is to happen after every sprint like retrospectives but more focused on introspecting and documenting the sprint from a Technology Perspective rather than from a Process Perspective which helps to adopt an organization culture on more tech savvy rather the process or anything else. The key outcome is a collection of reusable technical input , ideas, code snippets, assets, feedback which can be converted into knowledge base, blogs, assets, solutioning and patents that can be shared with other squads or teams in the organization and thereby fructify the key objective of agile that is Continuous Improvement. This also helps to measure the “Technical Enrichment”(TE) after every sprint at an individual level to ensure that there is a Continuous Improvement at individual level in terms of technical knowledge which further helps to deiver more story points in future or to address more complex technical issues as well.
Who is to run TechnoSpective ?
Unlike normal sprint retrospective it is to be run by somebody who is technically sound. If the SM himself is a technical person he can run it otherwise the SM and Technical Architect should run it together.
What are the agenda of TechnoSpective ?
- Please list down the various types of Use Cases which we addressed in last sprint ( Please include — application type, technology stack, number of modules etc. Please don’t add if it is already listed here).
- Please mention various approaches in brief (highly summarized) which we used against each of the above use cases.
- Please mention technical challenges involved and how did we solve them.
- Please mention if some reusable idea or code snippet or asset arose out of this sprint.
- Please mention any other technical Lessons Learnt.
- Please mention tools used and our feedback on the same ( Basic functionality , ease of use, free or licensed etc.).
- Overall how do you feel technically enriched ? ( In a rating of 1 to 9 )
An example of TechnoSpective
Let’s consider a team who recently work on secret scanning and remediation on various applications came up with below mentioned information as part of TechnoSpective
- Please list down the various types of Use Cases which we addressed in last sprint ( Please include — application type, technology stack, number of modules etc. Please don’t add if it is already listed here).
Outdated Helm chart , vault injection not happening , dirty repositories, initialization files not using vault secrets etc.
2. Please mention various approaches in brief (highly summarized) which we used against each of the above use cases.
Update chart file , flux file, check the vault injection from terminal etc.
3. Please mention technical challenges involved and how did we solve them.
Re-generate the repository or fix the chart file , check if the microservice name is vault acceptable etc.
4. Please mention if some reusable idea or code snippet or asset arose out of this sprint.
We developed a Reader class to read the vault secrets which can be used by other squads.
5. Please mention any other technical Lessons Learnt.
There is a difference in flux files for different environments like IBM K8 , AWS ECS etc.
6. Please mention tools used and our feedback on the same ( Basic functionality , ease of use, free or licensed etc.).
We used IBM detect secret tool as mentioned in https://github.com/IBM/detect-secrets/security which was quite handy to detect secrets in various types of repositories.
7. Overall how do you feel technically enriched ? ( In a rating of 1 to 9 )
Overall I rate myself as 7 compare to 6 in my last sprint.
That’s it !! The TechnoSpective not only helps to document and share the technical experience or expertise but also helps to measure the overall technical enrichment of a team member to have a clear indication that there is a Continuous Improvement not only at tribe or squad or organization level but also at an individual level which helps further employee engagement and satisfaction and support resource retention as well !!