Adam Hawkins presents the theory and practices behind software delivery excellence. Topics include DevOps, lean, software architecture, continuous delivery, and interviews with industry leaders.
Hello and welcome to Small Batches with me Adam Hawkins. In each episode, I share a small batch of the theory and practices behind software delivery excellency.
Topics include DevOps, lean, continuous delivery, and conversations with industry leaders. Now, let’s begin today’s episode.
So wow. First podcast episode in a bit. I’ve been busy paddling and doing things _not_ on the computer. That’s been wonderful, so less time for my self-study and doing this podcast. Anyways, I had a brainwave and a blast of creativity again so here we go. Small Batches returns.
I’ve been in various management positions during my career. The route has been IC to manager. I thought my technical skills would help me as manager. That was true to point—necessary but nearly sufficient. I discovered a lot on my own without direct coaching or mentorship. First via books then by experience on the gemba.
So here are twelve things I wish I know before undertaking my first management role. They apply to engineering managers of all sorts, from mobile app teams to data teams.
One, you must optimize for global flow. This means corralling WIP. That’s your responsibility. The lower the WIP, the faster the flow. The fewer cars on the road, the faster they go.
Two, you must flow at different abstraction layers. Optimizing for global flow means continuous delivery for four types of value: features, defects, risks, and debts. The second level is how and where that delivery happens. The goal is the same at each level but with a different mental model.
Three, you must identify and explicitly communicate your model as frequently as possible. Sharing your mental model broadcasts your understanding of the current condition to all involved. Then it may reconciled with other competing models to converge on the best fit. At that point, people are aligned enough for collaboration.
Four, you must see the queues and feedback loops. Delivering those features, defects, risks, and debts requires seeing the queues in a complex multi-project environment. This comes with buffers, controlling WIP, cost-of-delay, conflicting priorities, and varied cadence for decision making. Queues will load and drain at different rates. Act accordingly.
Five, you must strive for continuous deployment of small batches. This reduces WIP. It also provides faster feedback to all involved. Also, and equally important, provide better measurement of unused buffers in planning queues.
Six, you must find success through others. If you found personal success through shipping code, then that will not sustain you as a manager. You will only succeed when your team succeeds.
Seven, you must deeply understand these four capabilities: system design and operation, problem-solving, knowledge sharing, and developing these three capabilities in others. Bring this mental model to different scenarios. Apply the capability that best fits the challenges in the current condition.
Eight, you must be a leader. Leaders are not just decision-makers. They have a vision, the capacity to rally others to it, and a plan to achieve it. They must lead by example through respect for people on the gemba. In my opinion, the best leaders are the lean senseis. Go and study these people.
Nine, you must learn new skills to collaborate across a wider value stream. “The Business” is not a dirty word. It is _the word_. You will need exposure to the common domains you go between. Read different books. Talk to different people. Listen to different podcasts. Ground yourself in a different audience.
Ten, you must know the gemba otherwise, it’s game over. You will be called to assist and problem-solve on the gemba. If you do not know how the work is done, then you must learn. Never be afraid to _go and see_ anything. Conversely, practice asking: “Can you show me?”.
Eleven, you must find a coach. If you aren’t getting it in your current position, then find a discussion group. You need people who understand your challenges and can assist you.
Twelve, you must become a continuous learner. Odds are you created the habit through years of programming. Keep that up. Use your management experience to evaluate new technologies. You will see them differently.
Thirteen, you should get my Small Batches Way study guide. The guide lays out three courses of study. Go beyond the core study into the secondary study. Follow the path and you’ll put these points into immediate action. I’m telling you, mastering these things will put you a cut above your peers.
All right that’s all for this batch. Visit https://SmallBatches.fm/98 for a link to the study guide and ways to support the show.
I hope to have you back again for next episode. So until then, happy shipping!