Software product development in the Agile/Lean style is counterintuitive until you’ve done it for a while (and even then it can throw you a curveball)

. You’ll get uncomfortable. You will persuade yourself that your company is unique, and that the patterns don’t apply.

But the patterns DO apply. To make meaningful progress, you must take three foundational leaps of faith.

Because the benefits accrue over time, you will need lots of faith (especially early on). The danger is hitting a pothole, and slipping into a local maximum. Often the answer is to get more uncomfortable — shorten the iteration, lower WIP limits, and have the tough conversations. It’s hard. No amount of rationalizing or “hey, [some company] does it” will prepare you.

It starts with…

Working more closely together…

Cross-functional teams, team goals (vs. individual goals), closer collaboration, full team retrospectives, fewer handoffs, greater autonomy, mentoring and coaching, need for psychological safety, large-scale kaizen events, swarming on impediments

Working together let’s you…

Work with smaller/less/fewer/lighter…

Teams, tasks, classes and methods, batches of work, components, “slices” of functionality, planning inventories, experiments, features (for equal or greater benefit), work in progress/process, context switching and multi-tasking, process overhead, command-and-control, dependencies, constraints

Of course, when things are smaller you…

Do things more frequently…

Show your work, refactor, get feedback from real customers, integrate, test, inspect and adapt, act on new learning, talk/pair/collaborate with teammates, deploy, review usage data, measure outcomes, stand-up, kill underperforming features, test new capabilities, realize benefits/outcomes, budget and finance, reallocate investments, run continuous improvement experiments

It is perfectly natural to feel incompetent, uncomfortable, bothered, pessimistic, and off-kilter. So the trick (to quote Modern Agile) is to make “safety a prerequisite”, and be prepared to get a little uncomfortable. Make it safe to take the leap of faith.