Finding the Gemba in Software Development

Posted on January 7, 2021

The Gemba has an almost sacred place in Lean culture. In my own mind it carries similar connetations to the Dojo in martial arts. It’s as if we should bow in and out when entering and leaving, rather than clocking in and out. Or perhaps I’ve taken the martial arts metaphor of the Improvement Kata a bit too far?

Gemba, translated, means “the real place”. It is the place the real work happens. The place where customer value is created. The place where the value stream is.

“Go to the gemba and watch the value creating work, the real work of the business” - John Shook

For us, as software developers, where is the Gemba? This is a tricky question to answer. In many cases the software forms part of the Gemba. If we are building software for factory automation, the Gemba is the factory floor. If we are building Point of Sale systems, the Gemba is the retail store. The Gemba hasn’t changed. But for e-commerce or media streaming where the Gemba is ever closer to the customer? The line between software and Gemba begins to become blurred and suddenly the relationship between software developer and customer is a lot closer.

A key role of Lean leadership is to understand how value flows through an organisation, from the moment the customer triggers their request to meeting their demand, and align people’s work to it. So knowing the real Gemba is critically important. However I’m going to side-step that for now because it’s worth a seperate blog post on its own and it will be different depending on the role software is playing in the value stream. For now, let’s assume the Gemba is where the software is made.

This makes the real work the code. The value stream is the process of turning ideas into working code which users then use to get their jobs done.

“Toyota managers should be sufficiently engaged on the factory floor that they have to wash their hands at least three times a day.” - Taiichi Ohno

Principle 12 of The Toyota Way is “Go and see for yourself to thoroughly understand the situation (Genchi Genbutsu)”. Genchi Genbutsu translates as “real location, real thing”. It is a principle that management and leadership happens at “the real place” (the Gemba), or, as Lou Gerstner said “you cannot run a successful enterprise from behind a desk”.

This explains why we argue for:

“Coding Architects who work with teams and actually write software, rather than existing as “the Architecture Department” in an ivory tower pontificating on the best ways to write software. “ - Enduring Techniques from the Technology Radar.

But, as a Head of Technology, I am learning that it goes far beyond that.

“The aim of leadership should be to improve the performance of [hu]man and machine, to improve quality, to increase output, and simultaneously to bring pride of workmanship to people… to remove the causes of failure: to help people to do a better job with less effort.” - W. Edwards Deming

Leader’s “job is to improve the system”. In this case the process of software delivery. The responsibility for solving problems and improving the system is with the teams (“Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.” - Agile Manifesto). Leaderships role is in creating the environment to do that.

In his best selling book The 7 Habits of Highly Effective People of Dr Stephen R. Covey said great leaders achieve this because they “Seek First to Understand, Then to Be Understood” which has echos of the Lean principle “Go see, ask why, show respect”. Lean pushes the leadership habit further. “Go see” means Leaders go to the Gemba. They create autonomy at the real place. Process improvement is driven from the real place by leadership seeing the real work really happen and coaching teams through the mindset of Continuous Improvement to “collaborate with the team and find problems together” over leadership giving answers.

In Lean organisations this is achieved through the Gemba Walk part of Leader Standard Work. Understanding how to apply the Gemba Walk in a software development environment isn’t easy. Simply looking at code is not enough. This is probably why many Agile teams thrive when leadership joins the stand-up, because this brings them close to the real work without having to hover behind a pair.

For people like me who need to work across delivery teams and create that environment where they can pursue continuous improvement, I need to develop my own skills in being successful in walking the Gemba. And, as Lean tells us, obstacles to achieving this are to be solved not avoided.