I have worked at Comfone as a software developer for 13 years.
I like working at Comfone because I really enjoy participating in the operation of a worldwide network.
Last year, my manager, Marc Stadelmann, wrote a blog about SCRUM methodology.
We have now been “scrumming down” for one year and a half now and I would like to share with you my developer point of view.
In this blog, I will be discussing my experiences with SCRUM, its benefits, and how it has changed the way that we work. I believe that the SCRUM methodology has allowed us to increase our efficiency by looking at potential barriers in a different way, working together as a team to overcome things more quickly. This is great news for our customers, as it allows us to rollout important changes in a more efficient way.
SCRUM: where do we start?
When starting a big project, it is normal to feel a bit overwhelmed by the amount of work and the complexity.
Sometimes, the hardest part of a big project is knowing how to start it.
What I like about SCRUM is that everything is broken down into small stories that fit into a ‘sprint’.
At Comfone, we are working with two weeks sprints and are between 3 and 5 developers per SCRUM team.
This means for each project we do, we take something extremely complex, and break it down into more manageable parts. By solving these manageable parts, the entire project gets done more quickly.
‘I thought of that while riding my bicycle’ – Albert Einstein on the Theory of Relativity
To illustrate what I mean with an example, let’s take a bicycle.
A bicycle has a complex design, made up of many different parts. If you were tasked with designing a better bicycle, how would you begin?
The SCRUM methodology would suggest you do it as below. By breaking it down, you can focus on one unique part at a time, and everything you change will make the overall bike better.
This is what the developers at Comfone are doing with the services, apps and products that you use.
We sort the stories by priority, allocating those with the highest priority to the next sprint. This frees up our time to focus on the sprint infront of us, without being disturbed by the size and the complexity of the overall project.
If in the middle of the sprint we suddenly feel a decrease of productivity, we call Marc, our Scrum Master, who takes immediate actions. Like for instance an energizing massage or a fondue in the Alps…
Ok, maybe I am fictionalizing it a liiiittle bit 😉
What challenges do we have with the SCRUM?
So far, SCRUM sounds like the perfect solution. But where are the challenges?
Challenge 1: planning and estimating completion dates
When you work in IT, it can be difficult to estimate the time needed to complete a given task because of the numerous underwater stones.
When planning, you try to anticipate all potential issues, and in your mind accounts for all eventualities. However, there always seems to be emergencies, bumps in the road and other unforeseen issues which affect the delivery date…
With SCRUM, we estimate the time by setting to each story a number of “story points” (1, 2, 3, 5 or 8).
After some sprints we saw that our cruise speed was around 10 story points per person per sprint.
At the beginning of our SCRUM journey, we were underestimating the story points. In order to get a more accurate idea of what we needed to do, we started to add stories dedicated to the analysis.
With experience we also learned to set more story points in order to take the underwater stones in consideration. Today our estimations are pretty accurate.
Challenge 2 – communication
With SCRUM, teamwork is essential as it makes tasks move ahead more efficiently and quickly.
The Development team now has a 15 minute meeting every morning allows to share information efficiently.
This means that when one of us is unable to complete a story, another member of the team can help or take the story over.
Challenge 3 – buy-in from other departments
It was important to explain the Scrum methodology properly to the other departments within Comfone.
Today, our colleagues understand very well that a non-urgent task is not taken immediately but is first evaluated by the product manager and scheduled in a further sprint when it is relevant.
By working this way, we are able to focus on the current sprint, which allows us to get the work done more quickly in the end.
Final thoughts on SCRUM a year on
Implementing an agile methodology such as SCRUM has definitely been a steep learning curve, and we are still perfecting our approach.
As we gain experience, we get more accurate all the time, and are able to complete more and more tasks.
From my developer point of view, the introduction of the Scrum methodology in our department is therefore a great success!