Acquiring a New Software Engineering Team
By: Jesse White
Tags: Management And Leadership, Process, Tech Leadership, Software Engineering

Introduction

Acquiring a new engineering team can be daunting, especially if it’s your first time. I’ve drawn from what I’ve learned over the years both from taking over existing teams and passing my teams off to other managers, to create this framework for taking over an existing team. It will help you prioritize your efforts to ensure long term success and cultural health.

Goals

The following goals are in chronological order based on importance. Your plans should orient around these goals and should allow you to focus on the most urgent ones first.

Establish Trust

Trust takes time so you need to start building it on day one. Furthermore, it will be hard to accomplish the other goals unless your team is candid, and they won’t be candid if they don’t trust you.

Understand the Team’s Charter and Roadmap

Almost everything about a team (process, culture, architecture, etc.) should orient around the team’s charter and roadmap. It’s important to understand this first because it will be the context for everything else.

Understand the Culture

What does the team value? What is the team’s philosophy and what do they optimize for?

Understand the Machine

If the team was a machine how does it work? Where does work come from and how do problems turn into solutions? What are the processes and why? How are fires identified and put out? Who are the stakeholders?

Numerate the Risks

What could compromise the team’s charter and roadmap? This includes things such as flight risks, stability and maintainability issues, broken processes, etc.

Clarify Changes to Charter and Roadmap

Even if the charter and roadmap isn’t changing it’s important to clarify it. If it is changing, you want to get the team on the same page. You want to do this after you’ve accomplished all the previous goals. Doing this early causes issues, for example signing up for a new charter with no plan for how to wind down the old one can cause anxiety for the team and compromise your ability to deliver.

Communicate and Rollout Changes

You will likely want to make changes to mitigate some of the risks you identified and better orient around your philosophy and what will give you the greatest chance of success.

Process

Hold a Team meeting

Work with the current team leader to let the team know the change will be happening. The goal is to instill confidence and clarity. You won’t be able to answer all of their questions and there will be unknowns, but you should be able to communicate the process for answering the unanswered questions. Don’t schedule the meeting until you have an answer for the following questions:

· I’m working on X, should I keep working on it?

· Will our priorities change?

· When will this change happen?

· What will happen next?

Note: You don’t need the ultimate answer, but it shouldn’t be “I don’t know.” Explaining the process and timing for answering that question is often better than the ultimate answer.

Hold One on Ones

Meet with the individuals as soon as you can after the team meeting. Get to know them, start to build trust, field questions and concerns. Meet and set up one on ones with stakeholders as you identify them.

Join the Team

Attend the meetings. It can be helpful to just observe for a bit, letting the previous leader or a member of the team run the show. Start reviewing work, ask that you be added to all PRs, but let them know that they shouldn’t wait for approval. You want to get a sense of the code cleanliness and the review process.

Brain Dump

Get documents or hold meetings to understand the following:

· Team charter and roadmap

· Working agreement

· List of services, products and systems owned by the team along with their architecture and documentation

· Processes

o Planning

o QA

o Triage

o Etc.

· List of stakeholders

· Notes and past reviews from the manager for all direct reports

Hold a Skip Level Style Meeting

At this point you should understand how the engine works or should work. You’ve identified some problems and probably learned some things you might want to incorporate in your other teams. You understand the full purview of the team and who to talk to for specific questions. You’ve established some relationships and people are starting to trust you.

Now it’s time to get the teams perspective. Skip level meetings are a chance to understand the following from the team.

· What works well in the team? This is everything from technology to working style.

· What needs improvement?

· What things should happen or what things should you start doing right now?

· What things should be stopped right away?

· What things should not be changed?

· What things do you get from your current manager that you really enjoy?

· What things do you hope to get from your new manager that you didn’t get from your current one?

This should be a fact finding mission. You’re there to ask questions, listen and make notes.

Create a Diagnostics Report

Summarize what you’ve learned so far into a diagnostics report. The report should cover the following:

· Charter and Roadmap

· Team Health

· Areas the team is doing well

· Where the team needs to improve

· Risks

· Proposed Changes

The exercise will help you organize your thoughts and make it easier for you to enact change.

It’s a good idea to send this report to your manager, your new team and the team’s stakeholders.

Rollout your changes

At this point you now where you want to go, now you need to figure out how to get there. The more clarity you can provide about how the changes improve the chances for success the smoother it will go. Make sure to include your stakeholders, especially if they’ll be effected. Solicit feedback on your proposed changes and schedule a meeting to explain them and roll them out.

Final Thoughts

Take Lots of Notes

Taking on a new team is a big learning opportunity. It doesn’t happen very often so soak it in and write things down.

Avoid the Urge to make Immediate Changes

Adjusting to a new boss is stressful enough on a team. It’ll take time for them to trust you. It’s also important to understand the situation and why things are the way they are. If you make changes too quickly you may miss out on an opportunity to learn.

Take over before the Current Leader Leaves

It’s important to take over the team before the current leader exits. You won’t know if you have everything you need from them until you’re fully seated in the driver’s seat.

Be Yourself

Finally, be yourself and embrace failure. This should be a fun and exciting time, and chances are if you’re having fun, you’ll provide positive energy and if you’re providing positive energy, the team will mirror you. Good luck!