jeremy.marzhillstudios.com/content/remote-managing-engineers.md

123 lines
6.0 KiB
Markdown
Raw Permalink Normal View History

+++
title = "Remote Managing Software Engineers"
2020-05-19 15:19:35 -04:00
date = 2020-05-19
[taxonomies]
tags = [
"teams",
"management",
"remote",
"work",
"covid19",
]
+++
# I'm a Remote Manager now
**If engineering management is hard try doing it remotely**
I'm one of those people who enjoys working from home. I'm just introverted
enough and have enough focus that working from home is kind of my ideal state.
I'm also a manager now though and that adds a whole dimension to working from
home compared to being an engineer. It's no longer about your effectiveness
when working from home. It's also about how effective your team is in a remote
situation.
In this Covid19 world we find ourselves in, many software shops have found
themselves suddenly transitioned into a full remote working environment. This
poses new challenges.
**Good remote management is just good management**
Many of the things that make for good remote management of software engineers
are also just good management practices. You need to empower your engineers to
make decisions autonomously. You need to be able to trust your engineers and
you need them to be able to trust you. You need regular communication with the
engineers in order to facilitate all of the above. These same principles that
make a remote team successful also make all engineering teams successful.
Mastering them when you are remote managing will only make you more successful
when you are local.
# Principles of Remote Management
2020-05-19 15:19:35 -04:00
Remote management works best when you have given your team a clear mental
framework for decision making and autonomy. You can't be as available for that
quick clarification or to obtain immediate permission. You need your team to
have the tools required for autonomy in their decision making. In my [previous
article](@/engineering-managment-is-hard.md) article I mention how important
narrative and identity are in engineering management. When managing remotely,
It's crucial. They can't just stop by your desk to ask a question. You won't
overhear conversations at desks when you walk by, and neither will your team
members. Many of the tools you used to promote a team identity and culture are
harder when you are remote.
## Written communication
Written communication can go a long way to giving your team a reference for
decision making. Keep a blog or send out weekly and monthly memos with your
perspective on the state of the team. If there are policies or processes that
are required for the team to follow, make sure they are clearly documented and
easy to find. When the team meets in a video conference make sure that someone
is keeping notes that can be disseminated after the meeting. It helps keep
those who had audio issues or weren't able to make it keep in sync on the
decisions. This all helps the team to understand how you see the teams identity
and the narrative you wish to craft.
Written communication helps keep the mental framework the team uses for
decision making stable. If there are disagreements among team members then
documented policies and processes give them a way to resolve the disagreement
quickly by referring to that documentation.
## Consistency
Being remote magnifies inconsistencies in your communication. You have to be
consistent in how you apply the principles that define your teams identity. If
you change how you make decisions every week then it's difficult for your team
to learn how to make decisions on their own. They'll continually be referring
decisions to you and you'll find yourself micromanaging. Micromanaging a team
is nearly impossible to do when working remotely.
Give your engineers a way to reliably make decisions that won't surprise you or
other team members. If they have a consistently communicated framework for
decision making then they will be able to make decision without fear and the
need for your involvement will be reduced.
## Be virtually present
Lack of a physical presence is a barrier that must be overcome. You need to
find ways to be available to your team through as many virtual mechanisms as
you have. Management tends to be more interrupt driven than software
development is. Have virtual office hours. Hold training sessions over Video
Conference. Pair with team members over Video and a shared screen. Whatever you
do don't miss your one on ones with the people you manage. It will take time
for them to build that mental framework for autonomous decision making and
there are no shortcuts. Make sure your team can access you when they need it.
## Build Trust
The foundation of an effective remote team is trust. It is much harder to build
trust without a physical presence. A lot of trust gets initially built via
non-verbal communication like body language. You will have to work harder to
build that trust when remote. The above points about regular consistent
communication are critical to your ability to build trust.
Demonstrate follow through in what you commit to do. Don't promise something
you can't deliver and be frank about it when you mess up. Honesty is key to
success. When the team learns they can trust your word they will get more
comfortable.
2020-05-19 15:19:35 -04:00
This forms a feedback loop with their autonomous decision making. When they
feel like they can trust the foundation they'll walk more confidently and make
better more consistent decisions. That in turn will cause you to trust them
more as well. Clear consitent communication leads to consistent decision making
which leads to more trust in both directions.
# Final thoughts
If your reading this and thinking "This is just good managment in general",
then you are absolutely right. Most of what makes a good manager is also what
makes someone a good remote manager. The only real difference is that any
failures in these principles is magnified when you are remote. But if you can
excel at it then some of the benefits can be incredible. Engineers who are
remote get more deep focus time than in the typical open plan office you have
today. If you can nail the team identity and narrative and keep everyone on the
same page then productivity on your team might just skyrocket.