The Engineering Manager’s Tools

What is in a manager’s toolbox?

Francisco Trindade
Better Programming

--

I’ve been writing about how to use systems thinking in software engineering management. I want to continue addressing a practical point: how to make change happen as an Engineering Manager (EM).

One of the realities of being an EM is that you constantly work on improving your team’s situation. For example, you can try to make your team more effective, help a team member grow, or improve your organization. Ultimately, being a change agent is a large part of the role.

These are usually complex challenges, though. How to influence your team across different contexts and problems is a difficult task. Because of that, I have found it helpful to look at it from a more practical perspective. So, what are the options an EM has at its disposal?

The EM Tools

While companies and teams vary, in most cases, an EM has authority over how their team works and how they evaluate their team members. This authority means they have three primary tools for change: Systems, Behavior, and Reward [ref].

An EM can act on Systems within their team to improve their work. They can also use their Behavior to influence others. And lastly, they can give Rewards to incentivize the correct behavior from others.

While these are high-level concepts, they are helpful when navigating different challenges. Understanding the levers they can pull means the EM can be more intentional when acting.

But how do these apply in a software engineering context?

Systems

Systems are the most common practice and the one that we discuss more often. Every team has multiple processes it follows, both formally and informally. Being a leader, the EM can act on team processes to improve the desired outcome.

Despite being a tool most managers know they can use, process change is easier said than done. I’ve failed at it and have seen many process improvement initiatives fail. Because of that, here are some principles I try to keep in mind when optimizing systems:

Start from the problem, not the solution. When you have a hammer, every problem is a nail. As a manager progresses through their career, they will learn solutions that have worked for them in past situations. While experience is excellent, it is essential to understand if other people agree that a problem exists first.

Agree on the problem, and suggest solutions. On the other hand, the manager must understand their role as a leader and help the team navigate towards solutions. While they can do that collaboratively, EMs have a unique position in the team, given their authority.

A helpful principle is that “Consensus is not everyone agreeing. It is everyone feeling they have been heard and taken seriously”. It is the EM’s role to listen to all perspectives and move forward with a solution that considers them all.

Think globally, act locally. While it is essential to assess improvement ideas against the problem at hand, an EM should consider the whole system when deciding how to improve. Most tactics used in a team will depend on the team’s context and other overlapping systems.

Without understanding the context, the team risks following “best practices” without fully understanding them, leading to negative results.

Change is uncomfortable. Lastly, it is crucial to understand that change is uncomfortable even when everyone is aligned. Team processes are not much different than habits, and changing them requires constant reminders and realignment, especially at the beginning. Unfortunately, it is common to see great ideas failing because the change was never implemented long enough, and the team reverted to old habits before seeing any benefits.

Behavior

In addition to acting on systems, managers can influence a team’s behavior with their most valuable commodity: attention. By being in a leadership position, EMs will have their behavior observed by team members and can use their focus to signal how the team should work.

While this is a more subtle way to approach change, it is a method that can be used across many occasions. For example, in a team meeting, the questions an EM asks will be considered significant. Likewise, in a project, the areas where the EM pays attention to will be noticed by team members. For example:

  • Technical Improvements — Suppose there is a technical area where the team could improve, such as testing or architecture. By focusing their questions and discussion on them, the manager can create space for conversations that will drive the team in the desired direction.
  • Process Improvements — When the team is improving its processes, the EM can help the team move in the right direction by paying attention to it and reminding the group of the desired change. As in any habit-building exercise, regular reminders and nudges will help establish the new normal.
  • Regular Syncs — In any regular meeting, like a standup or team sync, the EM can drive the team focus by asking questions in areas that need attention. For example, if a team is constantly reminded about quality over timelines, that will eventually lead to behavior that reflects that principle.

Rewards

The last method is likely the most obvious: managers can influence their team by providing rewards. Ultimately, the EM decides who they hire into the team, the members that advance into leadership positions, and how they staff projects. In addition, the manager can help define how a team will work by placing members in certain positions.

However, there is significant nuance to this method. When thinking about rewards, people usually consider the large and obvious ones: new hires, promotions, and financial rewards. Selecting people with specific characteristics will ultimately define how the team makes decisions.

What is usually left aside are the small nudges that an EM can give through small feedback loops. Most people appreciate receiving feedback but are generally not as generous when offering it. A helpful practice I’ve developed is to be proactive at observing my reports at work with the intent of giving feedback. For example, that means going into a project sync, taking notes, and giving feedback to the technical lead about their participation. Reading technical documents and providing feedback not only on content but also on form. Praising someone for raising an issue on the team chat.

Across all of that, it is essential to be mindful of how to use rewards to motivate the team in unique and inclusive ways without causing interpersonal issues by displaying favoritism.

As a manager, the more you can observe your team members and highlight small areas of improvement and success, the easier you will find it to improve how they work individually and, consequently, how the team works together.

It all goes together

These three methods will often overlap and influence each other, as in any complex system. An EM will use a combination of the three options for most practical initiatives that impact the team significantly.

Still, a broad perspective of the options will help you decide how to calibrate your actions as a manager and increase your influence over the team. In addition, it will make change easier.

If you have found this content interesting, this post is part of a series on Leading Software Teams with Systems Thinking. More broadly, I write about leading effective software engineering teams. Follow me if you are interested in the area.

--

--

Born in Brazil. Living in NY. Engineering at Braze. Previously MealPal, Meetup, Yourgrocer.com.au (co-founder) and ThoughtWorks.