Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage Articles Q&A on the Book Becoming an Effective Software Engineering Manager

Q&A on the Book Becoming an Effective Software Engineering Manager

Key Takeaways

  • A manager's output can be measured by the output of your team + the output of others who they influence.
  • Good communication is key, and managers should be able to choose the right medium and style for their messages for clear understanding.
  • Coaching is a framework for helping others solve their own problems by following their interests and asking probing questions.
  • Hiring for culture fit doesn't mean hiring people who are just like you. Instead, it means hiring people with shared values and ethics.
  • Managers can't prevent people from leaving, but they can ensure that they progress while they're still there, setting them up for the next stage in their career.

The book Becoming an Effective Software Engineering Manager by James Stanier explores how to manage engineers and what managers can do to build and run effective teams. It helps people decide if they want to go from an engineering to a manager role and organize and improve their management activities.

InfoQ readers can download excerpts from introduction, chapter 1, chapter 6, and chapter 7 of Becoming an Effective Software Engineering Manager.

InfoQ interviewed James Stanier about what managers can do in the first week on a job, measuring a manager’s output, avoiding bad communication traits, hiring people who fit into the culture and preventing people from leaving the company, forming and nurturing coaching relationships and creating an environment where people can learn from each other, and supporting remote working.

InfoQ: What made you decide to write this book?

James Stanier: Around a decade ago, I was working as a software engineer in a rapidly growing startup. In addition to building software, I was becoming interested in how we build and run effective teams. I wanted to put myself forward for becoming an engineering manager, but I'd never managed anyone before, and I'd never had any training. Our company was small and had a flat hierarchy at the time, so my options for learning were limited. What did it mean to be a good manager? What skills did I need to learn? How would I know that I was doing a good job? I felt like there was a real skills crisis for managers in technology.

In order to answer these questions, I bought books. Lots of books. They ranged from the excellent through to the awful, through to the ones that really weren't relevant to a first time manager in a technology company. I really wished that I had a detailed operator's manual for doing the job back then.

Over the years, I began writing articles on my blog (The Engineering Manager) and they were well-received - I got lots of email from people who were getting started as managers but didn't know where to get the knowledge they needed to feel that they were doing their job effectively. I then decided to pitch the book that I wished I had had at the beginning of my management career to The Pragmatic Bookshelf, since they publish some of the best technical books out there. I guess the rest is history.

InfoQ: For whom is this book intended?

Stanier: The book is written primarily for those who find themselves in an engineering manager role for the first time, or for those who are considering that career path and want to understand the role better and develop their skills.

However, the sneaky thing that I've done is written something that can truly benefit anyone working in our industry, since the majority of the skills that you need in order to be an effective manager are the same skills that can make you an effective individual contributor as well. There really is something in the book for everyone, even if you don't intend to become a manager. By understanding the role more, it can help you develop a better relationship with the person who you report into. You can mutually assist each other in doing a great job at work.

InfoQ: What activities should engineering managers do in their first week on a new job?

Stanier: It's all about getting oriented and understanding the team, the work they're doing, and the company. I typically use a process which can be followed when landing somewhere new. It involves creating a snapshot of the situation in which you can begin to work with your team. This snapshot is formed of three things: your own observations, your manager's observations, and your team's observations.

Your observations are what you see as you settle in and collect information from your team and your manager. We outline a number of techniques for new managers to ask questions to discover what's really going on inside the team, what they're working on, and where there may be ambiguities or frictions. These involve informal conversations, booking in weekly one-to-one meetings, and diving deeper into what they're building and why.

Then, as well as doing this downward, we also do this upward by having the new manager ask their manager about the same things. Do they think differently than what the team reports? Why? Are they prioritizing well? If not, why not? This effectively allows a diff to be taken at the interface of where a new manager will sit in the organization. Then, the new manager can make it a three-way diff by including their own opinion. Is everything going well or not? Are there communication issues? Is more work required on alignment to the business goals? New managers should understand this snapshot as soon as they can so they can begin making an impact.

InfoQ: As managers, how can we measure our output?

Stanier: It's not an exact science - in the same way that we can't measure an engineer's output by counting their lines of code - however, it's possible to use a rule of thumb in order to make sure that we're continually focusing on the most impactful work that is going to make the biggest amount of difference to our team.

The best rule of thumb that I've discovered is from Andy Grove's High Output Management. He states that a manager's output can be measured by the following equation:

            The output of your team + The output of others that you influence

Although this seems simplistic, it's surprisingly sophisticated. Firstly, it shows that a manager shouldn't be thinking about their own output as if they were an individual contributor. A manager shouldn't be concerned with what they are building, it should be what their team is building. Thus, the focus should be on empowering the team. The better the team gets, the better the manager gets.

Additionally, there are the others who the manager influences. Although this may sound political, it really isn't - it's about making connections with others in the department and having a say in what is being done. This can come through informal conversations and suggestions, through to getting involved (or even starting!) larger initiatives around what is being built and how it gets done.

Keeping this equation in mind can greatly assist a manager in prioritizing their work, and saying no to activities that neither help their team nor those in their network within the business.

InfoQ: What are bad communication traits that we should avoid?

Stanier: Ah, where do we start? Communication is really hard. We have to communicate effectively each day using spoken, written and nonverbal communication, and even though we have the best intentions, we'll often mess up because we misunderstand, or are feeling tired, or are just plain grumpy on a given afternoon.

Communication is a key currency for managers, so they should be able to categorize different types of messages into the mediums that are best suited for them. For example, it may be more effective to communicate particular messages in an asynchronous long-form written email, so that the message can be carefully crafted and delivered once to many people. Conversely, a sensitive issue may be best delivered face-to-face. Chat and DMs might be better suited to ephemeral day-to-day messages.

Managers should also ensure that all of the communication that they are doing is for the benefit of the recipient. They should "measure twice, cut once" as much as possible when it comes to communicating important and complex issues. They should manage their mood and energy and watch their body language, and always intend to deliver messages that are informative, useful and actionable.

InfoQ: What's your advice for hiring people who fit into a culture?

Stanier: Culture fit is a tricky one, because with time it has introduced many issues into hiring processes. We've all heard the term "culture fit" and that it's important to adhere to it. However, it could be argued that culture fit as a concept is impossible: culture, unless monolithic and non-diverse, is not possible to "fit into". Culture fit doesn't mean a team of young white males only hiring other young white males.

Instead, whether a candidate fits into the culture should be judged by positive traits that they should have that are not correlated with their age, gender, ethnicity, education or socioeconomic background. Instead, you want to ensure a good culture by hiring people who are motivated to make a difference, have a willingness to learn, are collaborative, communicate well, have a diverse background and viewpoint and are aligned with both your and the company's values and ethics.

What you don't want to do in order to ensure culture fit is to find candidates who have similar traits to you, such as your background or education, or their sense of humor, or whether you'd like to go drinking with them. You shouldn't be looking for someone who is like you.

InfoQ: What can we do to prevent people from leaving a company?

Stanier: Well, to an extent we can't stop people from leaving. They're always going to leave. However, as managers, we can try to keep our staff happy and motivated for as long as we can, and also assist in their career development so that they have many different avenues that they can explore whilst not having to go elsewhere.

I like how Reid Hoffman described career development in his book, The Alliance: we should define "tours of duty" with our staff that last a couple of years maximum, coach them towards achieving their mission - whether that be a promotion or mastering particular skills - and then reassess the next step in their trajectory at that point. That trajectory may mean they leave the company and go somewhere else, but they should do so with the manager's blessing.

There are a number of angles that can be beneficial to keeping staff motivated and having a clear career progression. These range from simply remembering to regularly check in about it in one-to-ones, through to building career progression tracks for individual contributors and managers, running regular performance reviews, and in-depth career planning exercises. But, of course, if someone just landed their dream job somewhere else, then that's fantastic and you should be happy for them.

InfoQ: How can we form and nurture coaching relationships?

Stanier: We can have these with potentially anyone, not just our staff! Coaching is a core skill that involves techniques for helping others explore their problems and come to their own solutions. We talk about how to incorporate coaching into your one-to-ones with your staff so you can practice the skill. This involves using a framework of interactions such as following their interests rather than directing them, asking questions and "keeping the thought bubble over their head" so they can work on their own problems with your prompting.

Once you've begun to master the skills, you'll see that they're applicable to pretty much any person with any problem! After all, you're only doing the guiding, not the solving. At this point, you can offer your coaching services to anyone in the department (or even company) by offering to meet on a regular basis, and following a set structure for each session that talks about the goal they're trying to achieve, the reality of the situation, the options available to them, concluding with the actions that they can take. If being an effective manager is increasing the amount of influence you have on the rest of the business, then coaching is a fantastic way to contribute to this.

InfoQ: How can we create an environment where people feel safe enough to give talks and learn from each other?

Stanier: Being a confident speaker and presenter is a key skill in everybody's career. However, we rarely get opportunities to practice our public speaking until it's too late: we're standing up in front of a room of strangers whilst feeling really nervous.

Managers can work on encouraging a culture of talks within their team. It can start small, by - for example - having one member of the team give a five-minute lightning talk on a technical subject each month in front of their teammates, in a friendly, supportive environment. It can be done informally, such as in front of a laptop at their desk. By lowering the barrier of entry to creating, practicing and giving talks, more people will get the chance to feel comfortable doing them. Better still, the best talks can graduate to a longer format and can even be given to a bigger audience, such as the whole department.

InfoQ: What can managers do to support remote working?

Stanier: I truly believe that remote working is the future. There are whole books written on this - such as Remote - but it broadly breaks into two main areas: the tools to allow remote working to occur (you may already have most of these) and the processes and mindset to make it happen effectively (it's likely we're worse at this).

We have the tools, and increasingly we have the willingness to do so from ourselves and our companies, but in practice, many of us are not very good at it. We struggle with work-life boundaries, with looking after ourselves mentally and physically whilst working remotely, and with the shift from synchronous to asynchronous communication. The best thing that our managers can do is read the success stories of those who have done so well, and then encourage their team to do the same. I highlight best practices in the book, but remote working is a deep topic where I'd hope that readers dig into the books in the bibliography, too.

About the Book Author

Dr. James Stanier is a computer science Ph.D who made the jump from software engineer to manager and has never looked back. He is based in Brighton, UK, and has built Web scale real time data processing pipelines and teams of people: both are equally challenging.

Rate this Article