Slides for "Leading software teams well"
I’m just on the way back from the Scottish Ruby Conference, where I delivered a new talk called “Leading software teams well”. The slides are below, and I’ll update this post with the video when it comes online.
It’s refreshing to talk about something both non-technical, which makes it more accessible, and something that’s as universally essential as leadership. The talk is titled for software teams, but it’s equally applicable to any kind of team. It charts my experiences as a wannabe leader at the tender age of 22, through to a frustrated manager who no longer writes code for a living.
The talk is centered on the following ideas:
- we can lead either through freedom or fear;
- we are totally unable to control anyone;
- we can show leadership no matter what our organisational position.
I’ve blogged many of these ideas before, but it’s been great to have a chance to pull my thoughts together and extend them.
The conversations that the talk generated were fascinating and I hope to spend more time speaking about this subject in the future - particularly the difference between the actual visible hierarchy in an organisation, and the invisible hierarchy of influence, which is usually much more real than the visible one.
UPDATE: Here’s the video.
More articles
Always Be Unblocking
The most impactful engineers I know do not just write code. They remove obstacles for others.
Your impact is not measured by the code you write. It is measured by how much faster your entire team moves because of you. At Cherrypick, we call this “always be unblocking” and it has become one of our core values.
Why Time Units Beat Story Points Every Time
Story points, t-shirt sizes, and fibonacci numbers. We have created an entire vocabulary to avoid saying what we actually mean. The truth is simpler: we should just use time units.
This realisation emerged from years of watching teams struggle with abstract estimation systems. The solution was right in front of us all along.
How To Get Clarity With a New Tech Team
You have just taken over a new tech team. There is pressure to deliver, not much signal, and everything feels urgent. Perhaps the roadmap is packed. Perhaps the team seems busy. But is anything really working?
This is your field manual. If you are overwhelmed and trying to get clarity, start here.
Read moreHow To Avoid Bad Startup Culture
If you are not paying attention to your startup culture, I have news for you: you are already building a culture into your company. Chances are that is not the culture you want.
Every company has a culture. It is a summation of all the habits and practices that make up the work. It is every choice, good or bad, made by every person involved. Every action sets a precedent, a “how we do things here.”
This is how we are wired. We are naturally social beings and are strongly predisposed to fit in to the group we find ourselves in, and to emulate their behaviour. This reinforces culture further, and compounds when more people are involved.
A culture grows like plants in a garden. You cannot stop the life from growing, but you can decide how and where it grows. Left unattended, weeds will grow alongside the flowers. The key is recognising this and putting in the work to shape it.
Here is a quick primer on how to do the minimum to avoid bad culture, and how to get good culture going with a little attention every so often.
Read moreWhy you can scale agile with the right attitudes
The more I work with teams, the more I think agile at any scale lives or dies based on attitudes of people in the organisation, rather than the scale at which you are attempting to do it.
Software development is hard, and it’s harder the greater the scale as Rachel’s post eloquently argues. However, I don’t think the scale is always the limiting factor here.
I’ve seen small teams with such a lack of trust that they burden themselves with suffocating process, and larger organisations with so much trust that they’re able to operate at the speed of organisations a quarter of their size.
As organisations get bigger, the trust required gets greater. If the trust exists, teams are able to remain independent and don’t get burdened with process.
If you need to work at one thing to make your large organisation more agile, work on building trust between teams, and between teams and management. Try small wins, quick feedback, and constant celebration. Decentralise decisions, give people ownership in their areas, and act like they’re as good as you know they are.
If middle and upper management could be persuaded to give up control and provide leadership instead, your scale matters much less than you might think.
Read more