This is an age old question, almost as old as Scrum itself—should a Scrum Master be technical or not?
This survey from Scrum Alliance , which revealed that Scrum Masters were mainly dealing with teams with 44% in software development and 33% in IT, would have us believe that a Scrum Master’s skills would depend on the team that they are leading.
After all, Scrum is not only used in software development, but finds acceptance in other departments such as research and development, sales and marketing, finance/accounting, human resources, and more.
While many are of the opinion that a Scrum Master only needs to facilitate Agile team activities, some emphasize the necessity of a Scrum Master with basic technical knowledge. In fact, a whole new cohort of technically sound Scrum Masters has worked wonders in Agile teams in the recent past.
So while extensive technical knowledge is not a mandate for a Scrum Master, a familiarity with project-specific domains can greatly enhance the Scrum Master’s function in the Scrum team.
So how different will a technical Scrum Master be from a non-technical one? Let’s find out
Scrum Master with technical background
Benefits of a Technical Scrum Master (TSM)
A Technical Scrum Master (TSM) can play many crucial roles from that of a servant-leader to a technical facilitator.
A SM is not a team member per se, but can be considered to be a team coach. A technical coach plays a key role in successful Agile adoption, and in identifying possibilities to implement its usage to maximum effect.
A Scrum Master with technical skills can get involved in the software development activities by understanding them from a technical perspective.
A technical Scrum Master:
- Can empathize with an engineer’s point of view in addition to working with a product owner
- Can triage first level issues before they get assigned to engineers
- Can ask questions regarding story pointing and estimation
- Can help sequence roll outs based on technical priorities/complexities
- Can facilitate meetings between technical teams to arrive at solutions for technical problems
It is necessary for a Scrum Master to have basic technical skills in order to speak the same language as the developers. It can help the Scrum Master develop credibility amongst other senior management.
Issues with having a Technical Scrum Master (TSM) on board
If the Scrum Master is too technical, it could lead to the blurring of responsibilities of the engineering team and the Scrum Master.
The Scrum Master, with all his or her technical knowledge, may come with preset biases and ideas that will interfere with the role of not just the development team but also with that of the product owner. So instead of improving team health, this may actually undermine the team’s morale and cohesion.
A TSM can affect the Scrum team in many ways.
- Act as a technical SME (subject matter expert) and try to handle services
- Ask team members some questions on their assessments
- Force the team to adopt and use a particular technology
- Guide the team on how to disintegrate stories into tasks
- Guide the Product Owner on how to evaluate the work
- Try to handle the project that the team is working on
Both the team and the organization should understand what a TSM is doing and when he/she is going beyond the scope of their role.
Scrum Master with non-technical background
Benefits of a Non-Technical Scrum Master
Q: Should a Scrum Master necessarily have a technical background?
A: Definitely not!
It is not mandatory that a Scrum Master should be technical, but it is very essential for an SM to have excellent communication and management skills.
The main role of a Scrum Master is to assist the team to follow the processes properly and the team is completely responsible for the enhancement of its technical practices.
Scrum Masters with a lack of technical skills do not bring in their opinions or biases, thereby giving engineering teams freedom to work from their own perspective. But it is still the Scrum Masters job to facilitate meetings between various technical and engineering teams and resolve any barriers that they may face during product development.
A Scrum Master need not necessarily know the domain details that the team members are working with. This is because everyone in the team has certain responsibilities, such as:
- The Product Owner is responsible for having knowledge on what needs to be done
- The development team is responsible for identifying how to execute this in a better way
- The Scrum Master is responsible for enabling them to do what they need to do
Issues with a Non-Technical Scrum Master
A Scrum project’s failure can be attributed to a number of reasons; but can it be attributed to the non-technical credentials of the Scrum Master?
Here are certain scenarios which could lead to that:
No follow-up with the team on their understanding of the User Stories
An experienced Technical Scrum Master follows up with the team and helps them execute the task.
May not be of help when mapping technical user stories
While a TSM may not be required for non-tech stories, in case of technical stories or technical products, the TSM can help fill gaps in user story mapping when the architect is busy with other technical assessments.
Acceptance Criteria given by the Product Owner (PO) is taken up without any discussion
Sometimes we need to examine whether the Product Owner has taken a comprehensive view while considering the acceptance criteria. A TSM can help here to negotiate the acceptance criteria in case anything needs to be considered additionally.
Unit testing is ignored frequently
A Non-Technical Scrum Master does not understand the importance of unit testing. But a TSM understands its essence and helps the team by arranging a meeting on unit testing.
No particular plans to address the defects
A Technical Scrum Master can take on some of the responsibilities of the development team, update the program on his/her machine, run unit tests, fix the bugs, and finally ask the testing team to check them once. A non-technical Scrum Master may not be able to help a busy team in this way.
Final Thoughts: Technical Scrum Master or Non-Technical Scrum Master?
A Scrum Master by definition is someone responsible for promoting and supporting Scrum; a servant leader who helps everyone in the team to maximize their productivity and deliver value.
Therefore in teams that deliver technical products, a technical Scrum Master may be the best fit to help smoothen the roadblocks for the team and ensure high productivity.
On the other hand, a non-technical Scrum Master may be the best fit in large distributed teams that need a significant amount of co-ordination and motivation.