Scrum Master with coding knowledge
Does a scrum master need coding knowledge as I could see in many job description asking the scrum masters with knowledge of programming languages like Java,Python etc
Thanks & Regards,
To save the cost some companies may expect technical team member to do this role as well. If company hires technical person who is ready to do scrum master job without actually having motivation & understanding of the role, it won't be really effective. He/she would be scrum master for the namesake.
As a scrum master with strong technical knowledge, I find I have to be very disciplined to ensure that I am facilitating rather than directing. It often happens that the development team takes approaches that I think are inefficient or flat out wrong. I try to respond to these situations by asking questions and posing alternatives. But I recently caught my self championing an approach rather than facilitating and forced myself to back off and let the team decide for itself.
I don't think technical skills are required by any means. They can help in understanding the team's overall picture and direction, but a technical scrum master also needs to be very careful not to become a tech lead.
Depending on what the organization hopes to achieve, yes, sometimes coding (or whatever technical skills are associated with the domain in which Scrum is being applied) are necessary for a Scrum Master to have.
Consider the services that the Scrum Master provides. Some of these include helping the team to create high-value products and removing impediments. Depending on what kind of help the team needs or what kinds of impediments they are facing, an in-depth set of technical skills may be what is needed. However, in other contexts, perhaps a different set of skills is necessary.
I believe that there are a core set of skills that all Scrum Masters, or agile coaches of any type, need. These include a strong understanding of the agile and lean values and principles, teaching skills, coaching skills, mentoring skills, and facilitation skills. But the balance between the technical development skills, the product or service management skills, and transformational skills (which would include things like psychology, organizational behavior, change management, and similar) will vary widely depending on exactly what the organization and team needs.
The Scrum Master role as described in the Scrum Guide does not need to have technical knowledge. However, job descriptions are very different. A job descriptions list skills needed for that job. A role describes the work that a person does. So the list of skills on a job description could span multiple roles.
I feel like a Scrum Master should have some knowledge of the technical field that the Scrum Team operates. Does that knowledge need to be intimate enough that they could do the work? Not really. Just enough to understand what kind of difficulties might be faced, enough to understand the impediments being raised to the Scrum Master to help remove. So knowledge, yes. Experience doing, not so much.
Scrum is a framework for developing, delivering, and sustaining complex products. Depending on the nature of the product, the implementation of the framework does not necessarily require coding skills at all.
It's good to keep a certain amount of scepticism about job postings.
These skills might indeed be needed, but it's also possible that this company doesn't understand what the Scrum Master's role is. At best, this would be an interesting challenge for a Scrum Master coming into a company. At worst a frustrating mistake, where you're destined not to be able to work effectively.
You might want to challenge such expectations if you get so far as an interview, and consider whether it is indeed the right position for you.
Even if it is not absolutely necessary to have profound knowledge or even extensive skills in the area of programming resp. coding as a Scrum Master, it would help me to have a basic knowledge for the upcoming job interviews. I would like to understand at least roughly the work of the developers and their language. Can anyone recommend an introductory book to computer science and programming?
Many thanks in advance.
I recently joined a digital team as their scrum master. However, I do not have any technology/coding background. Upon attending the daily scrum for a few days, it seemed clear that an understanding of software testing is highly required. The expectation from me was to handle technical queries raised by the developers. I am in dilemma as to whether a scrum master needs to have knowledge of software testing. This is not something which the scrum guide recommends. Can someone recommend an introductory book to gain knowledge of the same?
The expectation from me was to handle technical queries raised by the developers. I am in dilemma as to whether a scrum master needs to have knowledge of software testing.
Are the Developers planning work into the Sprint which they are unable to do, and are accountable for?
What you need as a Scrum Master is a knowledge of Scrum, including the importance of the commitments people are making.
You need a nice warm fuzzy feeling inside that the Developers are competent to craft a Done increment which meets their Sprint Goal. If they aren't, then that's the problem to solve, and that's how much of a technical expert you need to be.
As I stated previously, an organization defines jobs with skills that are necessary for that job at that organization. The Scrum Guide defines a role that has certain responsibilities to an organization in order for the Scrum framework to be successful for them. These may not be the same. In fact, I have started to see a lot of the responsibilities listed in the Scrum Guide for a Scrum Master or Product Owner in job postings for Engineering Managers.
So you need to take that into consideration when you are applying for and accepting jobs at various companies.
As an individual that has been involved in software quality assurance for many years, the best way to gain the knowledge you need is to get it from the people doing the work at your current organization. It is also a great way to create a bond and establish trust with your team mates. Ask them to explain what they are talking about to you outside of the Daily Scrum. This will help them to respect the purpose of the Daily Scrum and it allows them to explain exactly what they are discussing. Let them know that you do not have a background and are only looking for enough knowledge to understand their concerns and issues.