The Technology Adoption Solution
A Skill Sprint is an intense real-world learning experience for development teams looking to embrace new technologies. Developed by Andrew Holway in 2018, and now delivered by German integration specialists Cloudwürdig, the discipline is based on research by a number of academics into the way people learn. At its heart is the concept that people learn most effectively by “doing” and that a one-week Skill Sprint developing a live product can empower a development team for a year.
Technical skills are tacit knowledge
Tacit knowledge (as opposed to formal, codified or explicit knowledge) is the kind of knowledge that is difficult to transfer to another person by means of writing it down or verbalizing it. For example, that London is in the United Kingdom is a piece of explicit knowledge that can be written down, transmitted, and understood by a recipient. However, the ability to speak a language, ride a bicycle, knead dough, play a musical instrument, or design and use complex equipment requires all sorts of knowledge which is not always known explicitly, even by expert practitioners, and which is difficult or impossible to explicitly transfer to other people.
The development of technology and technical skills is a collaborative, social process. Supporting high quality social interactions is essential part of any engineers work. Successful technology teams often employ techniques such as Pair Programming - where two developers work together on a single computer - to ensure that new knowledge is not siloed within a single team member. Pair programming also dramatically increases the quality of the knowledge generated by reinforcing the social interaction and the quality of the engineering by applying more than one brain to the problem. A Skill Sprint consists of many pair programming sessions. It is the job of the Captain to ensure that the participants are switching the roles of "Driver" and "Navigator" regularly. The Captain will have to encourage people to pair as much as possible - providing hints, guidance and encouragement - backing off and providing space as much as possible. The Captain provides specific best practices and pattern guidance while the Navigator and Drivers code and build.
An important part of an engineering teams' productivity and quality is the emotional bond between the team members and the product. Team members that care will produce better work - faster and will have healthier relationships with the organisation. Pushing requirements top-down is normally understood to be a bad idea and maintaining the autonomy of the engineering team is very important according to Agile principles. Using external technology consultants and freelancers can create quite difficult situations - when the consultant leaves the job - how can we be sure that their output is successfully adopted by the team? If their output is poorly understood or perceived to be of poor quality then the team will reject ownership which immediately adds it to technical debt. The Skill Sprint is designed to ensure that the input of the Captain can be properly adopted by the permanent employees by imposing a simple rule - The Captain may not touch a keyboard during the skill sprint.
Skill Sprints can he used to develop new capabilites within teams quickly and efficiently without increasing headcount.