Remotely Managing Software Development Teams
Post date: Oct 12, 2011 1:52:0 PM
Remote working relationships have become fairly commonplace in the I.T. industry, and they are getting more prolific as many families are host to more than one career. For career minded people, advancement opportunities are hard to pass up; although, when both spouses work and the opportunity requires a physical move, it is sometimes hard to get the dollars to make sense. Moving is of particular concern when considering the perpetual uncertainty in the economy of the new millennium. In any case, some families take the plunge and leave the other employer scrambling to replace an experienced and otherwise reliable employee.
As a result, smart organizations are finding ways to retain these people, by being more flexible and by formalizing remote working relationships and policies. For the most part, remote working relationships have traditionally been geared toward satellite team members; however, more recently managers have began to work from afar, presiding over teams that are either geographically distributed or collocated. In my case, I am a manager that oversees multiple teams of software developers that are collocated, so I am the satellite with about 900 miles of separation from my teams. Remote management had no documented precedent in my organization; however, my employer is cutting edge in many areas, and learning to work smarter and to be more flexible is no exception.
There is no doubt that geographical separation between managers and the teams they lead can introduce communication barriers and present leadership challenges that need to be managed properly to preserve team morale and ensure high performance. However, there are management tools and techniques that can address these issues in a positive way, allowing managers to successfully lead people and teams remotely. I have been managing remotely for over a year now, and I'd like to share a little bit about our approach and what has worked for us.
When I learned that I was soon going to be leading my teams from a distance, I started doing some research to see who else was doing this and how it was working out. After reading through a good portion of the information available, I began to see some common themes. At some point during the information discovery process I began to build a table of data that later became the core of my remote management strategy. That table, the "Specific Strategies to Overcome Known Challenges" (below), is a simple two column list with each common "obstacle" on the left and a countering "tactic" for handling it on the right.
Looking back upon that strategy and more specifically the aforementioned table, I believe it remains a really good starting point. All the obstacles have proven to be relevant and the tactics are reasonable; however, we have really learned to rely on a small subset of the original list of tactics. This makes sense, as the tactics are the hard part; finding the tools and techniques that work for your team will vary and evolve. We had a plan, we tried a lot of things, and we kept what worked. At the end of the first year, we ended up with three types of meetings and four tools that facilitate the bulk of our work and working relationships:
Essential Meetings:
I hold weekly FTF meetings with each employee on my team. The agenda covers annual goals, reviews previous action items, and discusses current events. In the meeting, we document the discussion topics and assign new action items. We discuss details of tasks at hand, negotiate timelines, and clear up questions about priority. The one-on-one nature of the meeting also creates the opportunity to discuss more private HR issues without the awkwardness of scheduling a special meeting to share them. These meetings are held via conference calls with occasional video to make it a bit more personal.
I host a weekly whip-around meeting that includes all members of all teams. The agenda is simple; each person shares their biggest accomplishment of past week and their biggest challenge of coming week. We don't dive into technical details, and the meeting typically lasts 15-30 minutes. The meeting promotes transparency, awareness, and an appreciation among teammates. It challenges each team member to bring something significant to share. These meetings are also held via conference calls.
I facilitate project standups (SCRUMs) as required. Some weeks we may meet three times, whereas other weeks we don't meet at all. These are delivery focused sessions where we review tasks, timelines, issues, design details, and implementation choices. These are documented with a running agenda that lists tasks and issues with details on who is responsible, how it will be accomplished, and when it will be delivered. These meetings are also held via conference calls, but they nearly always include document sharing and co-authoring, as well as collaboration and sharing via chat windows and screen shares.
Essential Tools:
wiki
phone and video conferencing
screen share
electronic chat (and chat presence)
Essential Techniques:
In the end, as a remote manager you need to BE THERE, and your employees need to know it.
Establish joint goals to get people talking and working together. This keeps them together even when you are not there, and it helps create a healthy team environment.
Breaking the work up into manageable chunks that only provide part of the solution; this requires them to communicate in order for all the pieces to come together to form a whole. This will typically result in a better architecture, and it will definitely result in a healthier team environment.
Don't forget to create the virtual drive-by by dropping in to see how tasks are going. Use electronic-chat to engage employees frequently through out the day and make yourself visible and available through chat-presence. People will naturally try to solve problems on their own, but sometimes you want them to ask for help. There are times when employees can feel ignored. Prompting them to talk through an issue will help ensure that the problem or solution is clear, but equally importantly, it will let them know you are there.
Don't assume people are talking to one another just because they sit next to each other. Ask your people if they have talked to one another about specific topics or issues, and arrange for them to have discussions.
Don't live in your inbox. Synthesize communications and capture them in a place that everyone can continue to reference. Establish a decision rationale journal and a chronological activity log that you and others can lean on to show what has transpired over time. This will serve as a testament to progress toward goals, and a reminder of hurdles that have been overcome.
Some of this may seem like communication overkill, but it is a replacement for what you already do today without even trying. Without the water-cooler conversations, without the drive-by conversations, without the occasional lunch-n-chat, you will have lost your leadership edge. Remote managers have to ensure this previously informal communication continues. Remote managers need to BE THERE! When you schedule all these things, employees may grumble and they may complain, but in the end they will grow to appreciate and rely on them as much as you will.
The steady growth in remote working relationships, due to globalization and other factors, suggests that all organizations must eventually confront this problem. Thankfully, these challenges are not without solutions; in fact, they are often times facilitated by technologies that we currently use to solve other problems much closer to home.