11 mins
You have 0 further articles remaining this month. Join LeadDev.com for free to read unlimited articles.

In partnership with

As I look back at my days as an individual contributor (IC), I cannot avoid thinking about how my work life was more straightforward then.

Pick a story, headset on, get in the flow, test, get signoff. Rinse, wash, repeat. When things were complex, or I did not know how to solve a challenge, I would research, try a thousand things, go to forums, ask for advice, and it was only a matter of time and dedication until I hit the solution.

When I became a manager, my success was now reflected in the performance of my team members. It is a challenging transition for any IC and an exciting opportunity for those who find pleasure in helping others grow.

Pairing, coaching, mentoring, team-building, 1:1s, and many other face-to-face interactions provide insights so we can put together the proper sequence of opportunities, feedback, and motivation for individuals to shine. It takes time, dedication, and learning when to advise or give the team autonomy to answer a thought-provoking question.

Twitter advert

In the last ten years, it has become common to join a company where its members are distributed across multiple continents or regions within the same country. For others, in a matter of weeks during 2020, companies’ operations at offices came to a halt. Everyone was now remote, and questions rapidly came up.

How can we manage from a distance, without knowing what they are doing, without the quick casual chat, and without falling into micro-management practices?

How can we motivate them without understanding their day-to-day mood, emotions, and without coming across as invasive?

How can we challenge them when we don't see if they are struggling, have fallen into the rabbit hole, or are not comfortable initiating the ask for help?

Becoming a remote manager for remote individual contributors has forced these new leaders to learn some of the skills and strengths of those whose role is Director, Vice President, and above.

This article covers three techniques that I've found to be valuable for me as a Director and a manager of distributed teams and individuals. You can read them in any order. Here is the summary:

  • #1 helps you steer the ship.
  • #2 enables you to share the map and route on where we are sailing towards.
  • #3 allows you to know your crew better so you can train them and they then become the ones executing #1 and #2.

#1 - Build a dashboard with actionable metrics

We need to produce a system that we can observe and quickly understand if things follow a negative (downward) or positive (neutral or upward) trend.

A few rules come into play:

  • Key performance indicators (KPIs) are at the team level. We are not trying to measure individuals' performance; 
  • We should analyze the last three weeks when asking ourselves, ‘What is going on?’ Things change fast, and there too many variables; and 
  • We should track quantity married with quality. (More on this below.)

Our playbook is as follows: if things are positive, stay the course. If things are negative, it's time to ask ourselves a few questions while always assuming the best intent from every team member: is the data reliable? What could be going on? What changes have we introduced lately? Has the context or external circumstances changed?

Let's talk about what actionable metrics we should use to measure an engineering team or teams. I've followed two approaches, and both have served the purpose of helping me identify problems and track progress after we had implemented a course correction.

The first one is based on the fantastic book Actionable Agile Metrics for Predictability: An Introduction by Daniel Vacanti. The book leverages Kanban metrics to provide predictive analytics tools and services to any flow-based process. Think about work in progress (WIP), cycle time, and throughput applied to stories – not estimations – as the measuring unit.

  • Cycle time = stories suration 
  • WIP = stories started but not completed
  • Throughput = stories completed in a certain period.

We can harvest these data points in almost any Agile tool such as Jira or Trello in their reports section. If your team uses Slack or Notion boards, you might want to check out this article that has a lovely Google Sheets template offering some useful forecasting features.

The second approach models the same KPIs but based on pull requests. This is better fitted for teams that deploy to production every time they merge to the main branch.

  • Cycle time = pull requests duration 
  • WIP = pull requests created but not merged
  • Throughput = pull requests merged in a certain period.

Use Grafana to create a dashboard or simple spreadsheet with a table and a few charts. Observing the above indicators during the last three weeks, we can notice upward or downward changes and ask the relevant questions.

After a few weeks or months, if data proves reliable, we can publish the dashboard so the teams can adjust as they deviate. We want to promote independent teams.

But there is a pitfall: the team will notice metrics are highly focused on volume and time efficiency. ‘The more volume, the better. Faster is better.’ It might create a quality problem. Developers might skip one or two tests, QA might skip some details, etc.

We need to complete our dashboard and message by displaying reported defects, marrying volume and quality.

Follow the playbook to drive from a distance. And remember, if you observe a negative trend, check the data first. If data is not the issue, then talk to the manager or tech lead and discuss questions surrounding possible events, changes, or external factors that could be affecting the team. Always assume there is an explanation. Let the leader take the question to the team. Let them reflect on it, build that muscle. You are all reacting on time, no need to panic.

#2 Objective and key results (OKRs)

Wait a minute, I understand what I'm coding, but how does this make the product more successful? Is the rest of my team sweating like me to create this thing? Is the sales team busy? Did they have any recent success? Are other teams delivering features?

The above is not exclusive to remote workplaces. The lack of a socialized vision, business metrics, goals, and progress will eventually create a sense of void in prolific teams. Being physically isolated for an extended period augments the symptoms.

We want to promote independent, self-motivated individuals working in self-driven teams with a sense of belonging and contribution to something more significant than the parts. We must provide them a north star.

There are many goal-oriented frameworks. We are going to pick OKRs for this exercise.

A few rules come into play when defining the OKRs:

  • Objectives should be aspirational, guiding, and provide enough clarity
  • They are clear enough for readers without much context
  • Business metrics/KPIs are highly effective in letting the team members perceive their impact on business – ’Increase checkout conversion from 11% to 13%’ 
  • Define OKRs at the team level
  • If the team is mature, we want to open the conversation to include bottom-up OKRs. A typical objective example that comes up often is ‘Improve the quality of our releases’, and a key result might be ‘Increase tests coverage from 60% to 80%’.

Here is a quick checklist you can use to set your OKRs based on Yelp's talk, A checklist for OK OKRs:

  •  They track the completion of the objective
  •  They are neutrally measurable
  •  They deliver value
  •  They are resilient to scope shifts
  •  They provide reasonably accurate partial scores
  •  They are clear enough for readers without much context

Our playbook is as follows: once every four to six weeks, we will share the progress on our OKRs. We can choose a staff meeting, a town hall, or an email to the whole org. I prefer the last tactic as it does not force everyone to listen to one person for 30–60 mins and it lets individuals read at their own time and pace. If things are positive, stay the course, celebrate small or large wins, and recognize team and individual efforts. If things are negative, it's time to ask ourselves a few questions while always assuming the best intent from every team: is the data reliable? What could be going on? What changes have we introduced lately? Has the context or external circumstances changed?

#3 How to become one manager per IC?

Each member of the team has their strengths and weaknesses. The way they learn, the challenges they need, the sponsoring, and communication vary from person to person. Some of the CORE needs – Belonging, Improvement/Progress, Choice, Equality/Fairness, Predictability, Significance – might be more important than others, both in general or only during a specific time. A team member’s aspirations can lie on the technical or management track, or they could envision a hybrid one.

Therefore, each individual of the team needs a ‘different’ manager.

While this is an ongoing endeavor, we need to build a few ground blocks to help them and us along the way.

Career paths and skills matrices

For career paths, work with HR to define, update, and improve the technical and leadership ladders and their different levels. Your goal is to provide your team members with a clear path ahead. ‘This is how high we want you to reach to’.

Based on your set career paths, you can now define skills matrices that list your must-have and nice-to-have technical and soft skills for each step and seniority. Your goal is to enable members of your organization to self-assess their place in the race, allow them easy access to know your expectations, and more importantly, give them the right words to say, ‘I feel I've reached X level.’ It's a binding contract between both parties.

Agendas

Agendas are an exercise that you can do with every member of your team individually. Ask the person to create a spreadsheet with three columns:

  • My goals – a short and long-term personal agenda. For example, ‘learn this’, ‘become that’, ‘accomplish X’.
  • My team goals – short and long-term goals for the team. Some will read this as, ‘What are my boss's goals?’ Both are valid. 
  • My org goals – short and long-term goals for the whole organization. 

Set up a follow-up session to discuss the output – make sure you listen more than you talk. Next, ask the person to highlight the items across the columns that match or belong together. From this conversation, you can understand: what this person is interested in, what their understanding of the grand picture is, their feeling of belonging, whether they have been provided with clear expectations, etc.

Pay attention to topics and interests that do not match the scope of your team. In the future, as you are part of meetings, somebody might mention an initiative potentially related to it. If you manage to involve your team members, it might be a massive win on different levels. They may have never expected to be able to work on X in the context of your team. Then, you, as their manager, can remember this and allocate time and resources even when it is not related to the team's goals.

1:1 questions

This one is useful for colocated and remote setups, but it is particularly beneficial if you don't share continuous exposure. I've adopted the following questions from the fantastic Lara Hogan, and I've added a few I care about. Don't try to ask all these questions in a single session. There is more value in listening than talking. Let the conversation flow.

  • What is your current schedule? Does it work for you? 
  • What are you interested in learning? What is your preferred method of learning? 
  • What are your hobbies and interests outside of work? What do you do in your free time? 
  • What makes you grumpy at work? How will I know when you are grumpy? How can I help you when you are grumpy?
  • In what medium (Slack, email, video call) do you prefer to receive feedback? When do you like to receive feedback – routinely in 1:1s, or as it happens? 
  • How do you prefer to receive recognition – publicly or privately? 
  • What do you need from your manager? 
  • What do you need from your teammates?
  • What is your favorite way to treat yourself?

While these are much easier to ask if you are new to the team or hire a new member, I encourage you to use them as a reset in your 1:1s. Write the answers down on cards or in a note-taking app. You are going to come back for these many times during the years.

Once you have covered the above sections, create an individualized growth plan for each member. 

Conclusion

The techniques discussed in this article take time to implement, and each of the activities deserves your full concentration. If you can’t decide where to begin, my recommendation is to always start on matters that impact people. Take the time to know your team members, and provide a supportive environment and framework that promotes self-driven and motivated teams. These are essential needs for teams, and key if they’re distributed.

Twitter advert

Shaping culture in distributed engineering teams
Episode 02 Shaping culture in distributed engineering teams
Recruiting diverse engineering talent is everyone's job
Episode 04 Recruiting diverse engineering talent is everyone's job