Working with the Agile framework and Scrum is getting more and more popular each year. However, not many companies decide to hire a dedicated Scrum Master to help them out. Some of them think that since a Scrum team is self-organized there is no need for somebody else to facilitate it. They also feel like not hiring a Scrum Master means money savings, so why would we need that?
As a Scrum Master myself, I wrote this article to share my personal experience and thoughts on why businesses actually need this position in their team. I will discuss my responsibilities and how I am helping organizations and development teams to be more successful.
Scrum in a nutshell
A quick reminder: Scrum is an agile process that helps self-organizing teams focus on delivering the highest business value in the shortest possible time.
By using iterations in software development, i.e. sprints, teams can complete tasks submitted by the Product Owner in an effective and timely manner. By using Scrum methodologies development teams can produce working software in every sprint (one to four weeks). The role of a Scrum Master is to coordinate the project activities with business objectives.
Who is a Scrum Master?
Before we start discussing why you need a Scrum Master, let’s explain who it is and what is his/her role. In a Scrum team, the Product Owner wants to build the right thing, the development team wants to build it right and the Scrum Master wants to build it effectively.
The Scrum Master’s main responsibility is to ensure that the Scrum team works, as well as possible, within the Scrum framework. We act as a coach and protector to help ensure that feature requests, timeboxes and expectations from the team members are reasonable within the Scrum framework.
As a Scrum Master, I work behind the scenes while not getting involved too much in product development or strategy. I am a connector between product/business owners and development teams, just like a project manager. Scrum Masters tie soft skills together with the latest methods and tools, since software projects have many moving parts and programmers can quickly lose focus from the broader scope. We are needed to maintain the high-level view, help teams to understand the technical and organizational dependencies while steering clear from any predicaments. With a good Scrum Master, you can create a culture of accountability while helping teams to meet critical deadlines.
According to the Scrum Guide, Scrum Master serves on three levels:
- Product Owner by taking over tasks like facilitating and organizing events;
- Development Team by coaching the development team in self-organization and cross-functionality;
Organization by helping to understand and implement Scrum as well as to reach the best level of productivity.
“The Scrum Master is a servant-leader for the Scrum Team. The Scrum Master helps those outside the Scrum Team understand which of their interactions with the Scrum Team are helpful and which aren’t. The Scrum Master helps everyone change these interactions to maximize the value created by the Scrum Team.”
5 reasons why you need a Scrum Master
So the big question is, does it make any sense to have a Scrum Master in your company? To cut the long story short, it is not possible to enjoy the full benefits of Scrum without the Scrum Master. Without the coach, the team may become a complete mess. Here are the top 5 things a Scrum Master can help your organization with:
- Implement best practices on project management
A Scrum Master takes care of building and onboarding project teams so they could cooperate well on the particular project. He/she helps a Product Owner get a clearer vision of the product and communicate it to the development team in order to make that vision a reality. Scrum Master implements the best agile practices in the development process in order to develop good quality software in an effective manner. One of the roles of the Scrum Master is to also provide feedback to the team and drive the culture of agility and learning. This has a positive impact on the continuous improvement of a Scrum team.
- Keep all parties well informed and on track
As a Scrum Master, I host and facilitate scrum meetings, especially daily scrum meetings, in order to get updates on the progress of the project. Those meetings help to identify potential obstacles and find the right solution to them. What is more, our role includes ensuring the project stays on track and the team meets the deadlines with the desired outcome.
- Introduce Agile engineering practices
Usage of continuous integration (CI) and testing environment are the Agile engineering practices the Scrum Master will encourage the development team to implement. He/she also ensures the code quality and refactoring practices are addressed in the development team. Another Agile technique Scrum Master advocates is a pair-programming session, where two developers collaborate in real-time solving an issue or implementing a new feature. Altogether, these engineering practices reduce development time and improve the quality of the product.
- Make the Scrum team effective
A Scrum Master is concerned with creating an environment where the team can be effective by facilitating daily scrum meetings (standups), setting up retrospectives, sprint reviews and sprint planning sessions. We help the team to maintain the burndown charts that show if the sprint is progressing according to the schedule. This technique helps detect any issues as soon as they appear so that they can be discussed during daily stand-ups and focus on resolving them early to keep up with the pace.
A Scrum Master also shields the team from any interruptions during the sprint and removes obstacles and distractions which means maximum efficiency of the development team.
- Cooperate with the Product Owner
Cooperation with the Product Owner is also an important role of the Scrum Master. While the Product Owner is responsible for the product being created using Scrum, the Scrum Master is the “process owner” who keeps the team on track procedurally. Working closely with the Product Owner, Scrum Master helps ensure to keep the product backlog in a good shape for each sprint. Scrum Master helps to walk the Product Owner through the more technical user stories while encouraging collaboration with the Scrum team. Scrum Masters keep a good relationship between the team and the Product Owner as well as others outside the team.
A report from the battlefield - a real case of introducing Scrum to the project
I have been working as a Scrum Master at Selleo for almost 7 years and have a broad experience in facilitating various teams in their journey into Agile.
In this short real case, I want to share one of my experiences how implementing a Scrum process into the ongoing project became a game-changer for both the Customer and the team.
How it all started
Some time ago, there was an ongoing project developed by our team using some Scrum principles, but without a dedicated Scrum Master as the Customer was not convinced of having one. Time was passing, tasks were implemented in a continuous delivery manner, but some things started going wrong. The deliverables began not meeting the Customer’s expectations and the team started being more frustrated and overwhelmed. Finally, the time to stop the line had come and I was asked for help.
An intervention of the Scrum Master
When I joined the project as a Scrum Master, we talked to the Customer and the team to set up proper expectations and common rules. During that meeting, I could also share my experience from other projects and suggest the ground rules we all wanted to follow. It was a list of Agile best practices that worked well in the past and which we decided to use also in this case.
After a while, I could see that although some parts of Scrum were implemented, neither the Customer nor the development team followed all the rules.
First of all, there was no dedicated person from the Customer’s side who could act as a Product Owner with a clear vision of the product.
Before my intervention, the team allowed ad-hoc requests to be actioned during the development and it was difficult to achieve proper deliverables. I convinced the Customer and his dedicated Product Owner who joined the team why setting up a clear goal of the sprint is necessary. From that time on, during the sprint, I was protecting the team from any interruptions and all ad-hoc tasks were negotiated with the Product Owner. Keeping the sprint this way showed, in a relatively short time, that the team was able to stay on track and achieve the desired goals.
Moreover, I ensured that daily scrum meetings should be held on a daily basis, not twice a week as it was in the past. This helped the team to stay focused as they were able to regularly discuss any doubts with the Product Owner. Daily meetings also enabled teammates to help each other by removing blockers and solving issues together.
“After a short while, both the Customer and the team appreciated this scrum event pointing out that a well-facilitated meeting can be really energising and motivating.”
What has changed?
As a Scrum Master on this project, I was also facilitating sprint planning and review, coaching the Scrum team how to plan the sprint properly and how to successfully demo the outcomes of the sprint to the stakeholders.
Another important element that I introduced to the project was sprint retrospectives that allowed the Scrum team to improve both process and communication from one iteration to another.
Below I summarized some positive changes which occurred after I joined and facilitated the project as a Scrum Master:
- Product vision: Dedicated Product Owner joined the project and was responsible for determining the overall direction the project takes, what features the product contains and what are the priorities of particular tickets.
- More ownership: Facilitated sprint planning sessions helped the development team to feel more responsible for the tasks they committed to, sprints without ad-hocs disturbing the development process.
- Better quality: Following the engineering best practices and avoiding shortcuts in development as well as reviewing what went well and what could be improved during the retrospective sessions enabled the development team to implement quality from the beginning and develop a culture of teamwork and responsibility.
- Less centralised management: The team became self-organizing; they do their own estimates and task allocation and rarely escalate problems that could be solved internally.
- Better planning: Product Owner became more involved in the development process, more thought was being put into the priority and order of tasks. Less ad-hoc requests were occurring, making the PO more careful and aware of risk impacting the business in very clear ways.
- Better product: Due to better cooperation with the Product Owner and a well-facilitated process, the deliverables we developed were what the Customer was asking for and the risk of producing low-quality software was reduced.
In software development, a Scrum Master is a coach that trains the team, looks after its members keeping their best interests at heart. Despite that, the role of the Scrum Master is often neglected and misunderstood. However, having this role within your company can be the deciding factor in the success or failure of your projects.
Apart from the coaching and leadership role, a Scrum Master is a unique agile team member who spends much of his/her time helping other team members communicate and cooperate in order to meet their delivery goals.
Selleo recognizes the importance of such a role, so if you decide to work with us, you can be sure that your project will be well taken care of. Contact us to get more information about a possible collaboration and get to know our skilled development teams.