5 Leader”tips” and the Software Engineering Success Summit

Tom Elliott
average-coder
Published in
5 min readJan 26, 2021

Going from Individual Contributor to Manager, I had to learn quickly, and made plenty of mistakes along the way. These are some of the lessons I’ve learned over the past few years, that I hope will help any new or aspiring leaders along their own path.

This post is a companion piece to a presentation I’m giving at the Software Engineering Success Summit about making your choice between a Technical and a Management career path (more on that later!). Good leadership is essential for any senior member of a team, and these tips will help you boost your effectiveness as a leader no matter which path you choose.

Don’t Do Everything Yourself

A large part of leadership is convincing, prodding or flat out telling people to do things. This takes a certain amount of overhead, be it putting work into a ticketing system, scheduling a kick-off meeting, or just the time taken to explain your ideas. I’ve often found myself getting frustrated at the pace, and been tempted to just do the work myself.

This is a trap.

You only have so many hours in the day, and by delegating tasks to your team, they can act as a force multiplier so your overall impact can greatly increase. With a little patience, and careful stewardship, that great idea you just have will be done before you know it.

Including your team also gets more minds working the problem, and may bring forth ideas you’d never consider, which brings us to…

Let Your Team Surprise You

Some of the most satisfying experiences I’ve had as a leader have been when a member of my team surprised me by exceeding my expectations. When you have deadlines to meet, it can be tempting to assign the work to the people who have the best chance of completing the work on time and to the highest level of quality.

This approach to scheduling can result in some unfortunate side effects. Knowledge about a particular service can become siloed with the subject matter expert who is always doing the work on it, resulting in an unacceptably low “bus factor”. An undue amount of pressure could be placed on more experienced or high-performing members of the team, so the reward for doing good work is…more work. Worst, the avenues for growth and advancement narrow, and you could lose junior members of the team who don’t feel challenged or encouraged.

Try to stretch people every once in a while. Have them work on a new area of the product, or take on a task that’s new to them. Hold back on giving all the answers up front and give people an opportunity to develop their own solutions. You need to balance this with support and a safety net in case things don’t work out, but if you give people a chance to surprise you, more often than not they will!

Do What You Say You’ll Do

In his talk at LeadDev Austin in 2019, Spencer Norman said “Be the kind of leader that does what you say you’re going to do”. This advice struck a chord with me, as it touches on so many of the interactions and expectations we have as leaders. If you ask your team to do things, you better be setting an example of meeting your own commitments. If you promise to do something to help out a report, but don’t follow through, they might feel you don’t have their back.

I’ve found that following through on promises is mostly a game of keeping track of them. Luckily, there are so many tools out there to help. My go-to is currently the comment assignment feature in Google Docs. Since all my meeting agendas and notes are in Google Docs, I can quickly set myself tasks without a context switch. Not only that, but searching in Google Drive for followup:actionitems will show you a list of all your assigned items. I make a habit of setting aside a few hours a week to work through them.

Sometimes a task will be more time-sensitive. In that case, I’ll make sure to block off a specific time in my calendar to work on it. Even if I don’t end up doing it exactly during that time window, I’ve got a stark reminder right in front of me all day.

Give Credit

Nothing worse than having someone else claim credit for your work. The worst kind of leader is one who claims someone else’s achievements as their own. A great leader is one who elevates the people they lead, making sure they are appropriately lauded and rewarded for their efforts.

As a leader, everyone else’s work reflects on you, so if you’re giving credit for people going above and beyond, it makes your team and yourself look good as well.

Not only that, but frequent feedback is crucial to help your reports learn and grow. Both positive and constructive feedback. A common piece of advice is to “praise in public, criticize in private”. So if someone does something great, let them and others know, let them enjoy it, and they’ll be encouraged to repeat the experience or go even further next time.

Talk To Your Peers

When you start leading people, your peers are no longer your team, but leaders doing the same job as you. Believe it or not, they’re probably having very similar problems as you are, even if it’s not obvious from the outside.

When I first started leading a team, I mostly learned by emulating what I’d seen my own managers do, which left out a lot of the detail and nuance. Even worse, when I encountered new situations, I wasn’t sure how to handle them.

One Friday afternoon, as teams were finishing up their retro meetings and people were gathering for a well earned drink, I found myself in a circle of relatively new tech leads and managers. The longer we talked, the more we realized we were facing the same kind of problems in getting used to the role.

Shortly after, we organized monthly “huddles” to discuss these issues and share our ideas and learnings about leadership and management. This not only helped us feel more comfortable with the role, but led to a number of ideas and techniques being proliferated amongst the various teams, like common templates for goal setting and “questions of the week” for 1:1s.

You don’t even need a full blown programme of meetings to connect with your peers. Many of your peers would be willing to have a monthly 1:1 meeting with you, even if it becomes a purely social occasion.

The Software Engineering Success Summit

I’ll be presenting these ideas and others at the Software Engineering Success Summit on February 8th.

For 4 days, (Feb 8–11), Sam Gavis-Hughson of Byte by Byte is bringing you presentations from 15+ industry experts to show you how to transform your career into the career of your dreams. You’ll hear about everything from interview preparation to career development, and more.

For example, I’m going to be talking all about your choice between a Management and a Technical track to build a career you’ll find most rewarding!

Software Engineering Success Summit: February 8–11 2021

We’re featuring some pretty big names, including:

  • Professor Brian W. Kernighan (co-creator of K&R C)
  • Chris Castiglione (founder of OneMonth)
  • And a whole lot more!

The best part? It’s totally free!

Check out all the details here: Get your free ticket for the Software Engineering Success Summit today!

--

--