Here’s some advice to developers. Take continuous improvement into your own hands. Don’t rely on a manager or a Scrum Master. Take pride in doing it right.
Visualize your work. Measure lead times. Be disciplined in your retros. Surface impediments and blockers. Measure defects that get through to production. Call out areas where you need additional expertise. Get deeply involved in hiring. Keep track of how much flow time you experience as a team. Write run-books. Do RCA when applicable. Don’t toss things over the wall to another group. Do lunch and learns for other developers in your org. Do diligent group code reviews. Consider practices like mobbing and pairing. Hold effective meetings. Continuously refactor. Go to conferences together.
Own it. Don’t outsource it.
Push folks like me (PMs) to show you data for the work you’ve finished. Agree to meet with customers. Take an interest.
If you do all this, and your organization can’t…
- remove blockers
- resource the effort accordingly
- let you practice your craft
- overburdens you with work (keeps you busy)
- disrespects you
- asks you to cut corners that make no economic sense …then leave. That’s it. Not worth your time. You’re a pro and you deserve better.
All too often teams and management play a little dance. There’s a trust issue. So the teams resist continuous improvement (because it always flops). Management ups the process because there’s a lack of discipline and trust. Process is used to “prove whether the team is doing its best”. All the wind for any meaningful change is taken out of the team’s sails.
You end up with a weird bad parent / rebellious child syndrome.
At some point, someone has to try to break the cycle. Let that be you.