What got lost in translation from Lean Manufacturing into Agile?
3 solomonb 4 5/7/2025, 9:30:12 PM
The Toyota System (Lean Manufacturing) is largely considered a fundamental revolution in manufacturing. Systems like 5S, continuous improvement, just in time production, Kanban (which is way more sophisticated in Lean then in software project management) etc have been demonstrated over and over again to be highly effective at improving factory production, employee satisfaction, and product quality.
As I understand it, Agile was an attempt to translate Lean Manufacturing from physical production to software development. I've seen some pretty incredible presentations on the benefits of Agile, particularly out of Spotify.
Yet I've never personally worked somewhere that I felt adopted Agile in a way that delivered on the promises and I've heard similar sentiments from many other people.
I have personally experienced the benefits of Lean methods even outside of a factory setting when organizing my home and workshop.
Is there something fundamentally different about physical production processes versus software development?
https://github.com/rayfrankenstein/AITOW/blob/master/README....
Here's what I've learned from maintaing this compendium about why Lean manufacturing doesn't translate.
1. Japanese car companies companies were focused on long-term growth. Software companies, on the other hand, are extremely short-termist.
2. In Japanese car companies, anyone can stop the assembly line by yanking a cord and there is no dishonor in that. Try stopping working on a feature for half a day to refactor some code.
3. In Japanese manufacturing's golden age, workers had lifetime employment and there was a mutual concern by the company and workers for each other; a Japanese worker might be at a company for thirty years. In the software industry, the average tenure of a software company employee is, like, two years or something. And the environment is often very adversarial. You can't ahve
4. Japanese manufacturing focused very heavily on having very high quality vendors that make stuff that didn't require a lot of debugging. There was a heavy focus on part re-use in other designs; the same engines would be used in different generations of different models for years. The software equivalent of this would having a fully fleshed out, batteries included stack where little custom-invention would be required because the API's are just so damned good and comprehensive. How many times have you gotten a Not Invented Here or "that's too opinionated for my taste" approach from leads?
Agile itself as a set of principles is still invaluable. But it's been cargo-culted to death. The "agile" frameworks that exist today have been completely divorced from the principles. Tools like Jira are now so complicated and process driven that I would argue they are anti-Agile.
I think the key that makes process improvement work in manufacturing is that the production line is continuous, and the measuring of outcomes is independent. Car quality, customer satisfaction, units produced, mistakes, etc.
In software, the outcomes are often nebulous and unmeasured. There are not discrete, matching outputs over time. So management becomes obsessed with micro-managing and controlling the inputs. Ticketing, points, assignment, etc. Agile has become a system for creating dashboards more than outputting quality code.
Is that really true? I'm asking not debating, as I may have selection bias in how I observe Lean Manufacturing through the lens of small to mid size companies with active public relations via the internet.
> I think the key that makes process improvement work in manufacturing is that the production line is continuous, and the measuring of outcomes is independent. Car quality, customer satisfaction, units produced, mistakes, etc.
I think this makes a lot of sense. The products in software development are a lot more nebulous.
Put another way, lean manufacturing improves metrics for the margianal unit of goods. No one, customer or dev, is interested in the margianal unit of software.