Skip to content
Home » Navigating the Labyrinth of Technical Leadership

Navigating the Labyrinth of Technical Leadership

If you have ever been frustrated by your day job – I feel you.

This stuff is hard. I’ve been doing it professionally for nigh-on 30 years, and the bad news (and also the good news) is that it doesn’t get any easier.

Year on year, project on project, company on company.

And the worst bit? I’ve been around so long that I see it all going around again-and-again until it seems like it will never stop.

The technology might change, but the personalities you deal with and the problems you’ll face will likely remain very similar.

So what is the good news? Well, it’s a known problem and it’s a challenge, right? We all love a challenge otherwise we wouldn’t be working in software.

So let’s break it down.

Did you realise that just by caring – you’re actually a LEADER?

How does that work?

The things that slow us down

  1. Tools: While we want to stay on top of everything, it’s often the tools that we use to make sense of the tasks that hold us up. Task management systems like Jira or Azure Devops can be infuriating. No matter the system, imperfect tooling is frustrating. And worse than that, discussions about improving tooling can be a rabbit hole that wastes time and makes no appreciable difference.
  2. Time: it can be elusive when you’re trapped in the middle. Often, time is not in our hands. We get booked into meetings to make sense of the decision-making process. While this might be a part of the job, we often seem to be only a passenger and not someone who can overly influence direction. Additionally, existing hierarchies where decision avoidance is a force can make us feel like we are just a part of massive cabals of non-decision makers. In corporate work, the status quo is sacrosanct.
  3. Then we get the curveballs coming out of leftfield when we don’t expect them – the new task to pick up. The new highest priority item. Sometimes days, weeks even months of work can be thrown into the trash without a moment’s consideration for the effort we have put into it.

The triple threat of poor tooling and task management, time poverty due to meeting overload and changing priorities can make a mess of our workday.

The things that keep us busy

So what do we do the rest of the day? The things we would like to do would probably be in the following four camps – coding, driving up quality, making architectural decisions and managing and maintaining relationships with our peers, groups, teams and leaders. On a perfect day, you might accomplish some of these things, but you will never have the focus to tackle them all. So what can we do instead?

We can work at the things that can benefit us and those closest to us. Perhaps we can improve the process through automation or documentation. We might spend some time reviewing the code. We could spend some time with our peers and our bosses to understand what it is exactly we’re trying to accomplish with the team.

Building relationships through discussing our daily work is never a bad idea. Sharing a problem, asking for help, researching something and presenting it to the group to start a discussion. These are things which contribute to our own knowledge as well as the knowledge of the group.

Additionally, this time will give you a positive outlook on your contribution to the team and to the organisation.

The things that drive us forward

Looking forward can be comforting and rewarding and also scary. What it does though is give us a future anchor, something we can aim for with our actions. It might also lend itself to the organisation around us.

If we can align our future ambitions with the organisation, then all the better. If we can then lead our people towards that goal, perhaps everybody wins?

I’ve been reading Turn the Ship Around! by L.David Marquet – the former nuclear sub commander. The book has been making waves (pun intended) in the world of leadership because of its take on how a leader should work for their organisation. The inversion of control, the listening leader who empowers their organisation to do the work. The introduction opens like this:

“People are frustrated. Most of us are ready to give it our all when we start a job. [..] We eagerly offer our whole intellectual capacity only to be told that it’s not our job, that it’s been tried before, or that we shouldn’t rock the boat. [..] Our creativity and innovations go unappreciated. Eventually, we stop trying and just toe the line. Too often that’s where the story of our work life ends.”

In the book, Marquet breaks down the feeling of empowerment and ownership into three sections. Control, Competence and Clarity. Control is essential for us to feel (as individuals) that we have autonomy and agency within our work, and Clarity is valuable for galvanizing action and reminding us why we are performing our work. Competence is underscored as the most vital part of our job. Without competence, we don’t have a job. So make sure to focus on your skills and the skills of those around you.

As John Cutler says (#8):

“Remember to also do the job you were hired to do (if you don’t you’ll be easier to discount).”

Therefore to drive ourselves and our organisation forward, think about your personal competence and not just in technical terms, but also in social terms, in ‘soft skills’ terms. Can you improve in the way that you interact with others around you? What can you learn from the organisation and teams that you work with?

It’s what we do as leaders

When we consider our motivation to do well, it is important to keep working at the things we believe will bring a better outcome. We need to start thinking of ourselves as leaders.

L. David Marquet’s book shows that a large part of leadership is listening and reacting to what is around us and then putting it into a context that enables behaviours that bring the desired outcomes. Therefore first step is listening to ourselves and others.

Personally, therefore, whenever I see inaction or inefficiency or a lack of clarity on goals I will do the following:

  • Understand the status quo. What do you need to do every day to make things work?
  • Challenge the managing hierarchies. Encourage a questioning attitude.
  • Coach and mentor those around to align on expectations
  • Eliminate top-down monitoring and top-down thinking.
  • Focus on competence and skills.
  • Learn what is happening elsewhere and bring this to bear if it’s useful in your organization.
  • Bring experiences with you, but show you are on a shared journey.
  • Listen and learn from those around you.

If you want to dive deep into more about the types of people we are while we work, I wrote about this earlier this year when touching on the psychology of programming.

I would also recommend L. David Marquet’s book. It’s a good read and gives you a solid foundation for becoming a leader of leaders.