In the past years I had the chance to support, train, teach and mentor many teams in adopting Scrum and agile practices. I have seen many organizations, departments, group of people with various point of views regarding agile. Most of the time people around are skeptical and doubtful about bringing more agility in their environment simply because it is different than what they are used to. Thankfully after trying it, a large portion of people, even the more skeptical realize that they can’t come back to where they were before. When people realize this that mean you probably have made an impact.
I consider our job as coaches to impact organizations. When we come somewhere we should assess the current state of things around and measure what is changing weeks after weeks. They open new jobs for Product Owners, they hire an internal coach, the workplace changes, many visible signs you can track. Having teams delivering value to their stakeholders is something but that is not it. If you consider your job done when an increment is in production you probably missed the point. Our job is to bring people together, break silos, activate new channels of communication between people who weren’t talking together, give people autonomy, drive them to the path of mastery and create a supporting environment for all those changes amongst a lot of other things.
I was and still am a .NET Developer. I did many internships during my scholarship, then worked in small to large projects. I was quite happy and an innocent dev until I became team lead and had to spend my day to break down chunks of work for my team, do PowerPointS to justify changes to my client, report to the project managerS, report to other middle management. Lot of new things that made me realize my job would be boring from this time. Frustration was building up until I resigned because of a bad manager.
One day I was getting out of a job and my community lead decided I will go on an Scrum Training for a week. I came back from holidays and went to it with a vague idea of what it was. After a week I was transformed, literally. I loved my job again.
Since then and after years experiencing terrible and successful agile my first objective is to have people having an epiphany and help them realize they can also change things in better around them or at least try.
When you start working on agile projects you realize the most difficult part of the job is to convince people. You are basically swimming against the tide on a daily basis. Exhausting. But if you don’t have the right answers to their questions it makes things even worse. So let’s try to build ourselves the right discours.
Agility is a part of our everyday life
A lot of things around us are what we could call “Agile”. The foundation of agility is empiricism. You try something you get a feedback and then you adapt to the situation. You simply use the feedback to progress in the right direction. That’s it.
The Hotel Shower
For example when you arrive in an hotel room for the first time and you want to take a shower. You don’t know at this time what will be the temperature of the water coming outside the pipe depending on how you have adjusted the faucet. So you try and you measure the temperature with your skin then you adjust again until you find the right one. This is empiricism !
Now let’s look at the same situation from a different angle. This time in a sequential (waterfall) way of doing things. First you need a faucet that delivers an average temperature of 38 degrees Celsius. You go and ask someone to build one. You install it and then you open it and you realize it is way to hot for you. Back to square one, unmount it, back to your vendor and ask him to change it to deliver water at the temperature of 36 degrees Celsius.
I will let you imagine the time and energy spent across the entire process. Without mentioning the frustration. In this first simple use case it is clear that we need to adapt from what we measure and we need to do it as fast as possible to avoid accidents.
The Traffic Jam
Another example this time with traffic in big cities. Today a lot of roads are jammed with thousands of cars coming in during the rush hours. Now let’s imagine for a second that all the cars and motorcycles would be trucks instead. See how it could turn to be a nightmare ? And now let’s say they are all motorcycles. How much smoother the traffic would be?
In Paris we have a lot of traffic jams during the rush hours and during those hours you can see hundreds of two wheels. This is because most of us realized that it was much faster to go between the lanes with smaller vehicles. Again a simple inspect and adapt process that we applied to our every day lives.
So now, just pick a story your client can identify himself in and tell him how much better it could be to change the way his products are delivered. And again keep this in mind : start small.
For decades selling and contracting projects was quite clear for all parties. One side wanted to have what they asked for inside a specific budget while the other side tried to make sure they were reaching a certain amount of margin.
The project triangle between Scope, Time and Money was pretty clear and most of the negotiation was focused on Time and Money while the scope was non negotiable. You were receiving a RFP (Request For Proposal) and you were simply replying with Time & Money numbers. Sometimes only with one number : money.
With agile projects this triangle is getting horizontally flipped and now the scope is the center of attention. We still have Time and Money because you still need to manage a budget somewhere. But the good news in this new equation is that you can now introduce the concepts of quality and business value in the triangle. Quality by delivering what you can do with a certain level of quality in the time you have. Value by having to choose between features and thus deciding on what is really necessary for your business.
So as you can see by simply changing our approach and point of view on this triangle we introduced a new paradigm. This is called Agility. No more, no less.
Now if we look at Scrum we see how we tick every checkbox of this triangle:
- Time : an iteration of less than a month called a Sprint.
- Money : a product owner who manages the budget by selecting and ordering what is necessary to build the product in the most efficient way with the help of a self organized dev team.
- Scope : by gathering needs from users, stakeholders and taking feedback the product owner have all she needs to take decisions on what to put in the product backlog and how to order it.
Next time we’ll see how the product owner can steer the Product Backlog with specific engineering practices.
Finally! After a very long time thinking of it, I did it and here you are.
I’m currently working as an Agile Coach and I want to share my 2 cents with you. Lucky you.
Still, I won’t restrict myself to agility and as a passionate .Net Developer I will also talk about “Craftsmanship”. You can call it craftsmanship, clean coding, pragmatic development, etc. It’s in my very humble opinion all about professionalism, openness and passion.
Now, let’s blog!