a woman greeting her remote engineers on a video call

Engineering 14 min

Leading virtual engineering teams in times of hyper growth

Written by

Marcus Wermuth

Share

share to linkedInshare to Twittershare to Facebook
Link copied
to clipboard

"Hey, we have 30 new people joining next week." Not something you hear often in a company. At least, it wasn't something I heard at my past jobs.

Hyper growth almost sounds like something out of a science fiction movie or book. "Let's get the ship on hyper growth!" It is not fictional though. It is something very real. Remote is actually in the middle of it.

Hyper growth means the company is growing more than exponentially. In November 2020, Remote was around 35 people. At the time of publication for this article, we have more than 800.

That means 17 times more people in one year.

This averages out to about 50 new people joining per month.

And of course, it's not just the people, but the product, our revenue, and almost everything else that has been growing toward the upper-right at rapid velocity. We are building the world’s greatest employer of record services and international contractor management, which means we are scaling quickly in every way possible.

Navigating this phase of growth is exciting, scary, rewarding, and exhausting, all at the same time. Managing yourself is hard when things get blurry, not to mention leading and managing teams .

As I have experienced both sides — the slower one, as well as this fast one now with Remote — I am excited to share a few learnings that I have had in my time here.

Challenges we face

Yes, growing is fun and in theory an economically good thing for your company. But growth doesn't come without challenges.

Here are a few things that the team and I are currently facing. All are things you should be aware of in general, but especially when you are on hyperdrive. My perspective is mostly focused on the product engineering side, so be aware that other areas might experience it slightly differently.

Finding great people

In theory, you can be in hyper growth and not hire a lot of people, but I guess that would be tough on anyone involved. As I stated earlier, Remote is growing. A lot. Hiring is a challenge, but it doesn't stop there. Anything that involves people creates more tasks and problems you need to tackle. Creating a great hiring pipeline, bringing all those people onboard and into the right teams. You might need to train some, and ultimately you also need leadership: people who can help, assist, and grow everyone.

Building the right thing

Things are moving fast. Some might break, others might never get built. Hyper growth is challenging. You might have a bigger end goal, but getting there is tough. Making sure that all the people you are hiring are working on the right thing is another challenge.

It all comes down to how your teams and communication are set up. Does everyone know what their goal is? What should they focus on? And if not, how can they figure it out?

Maybe another team is struggling with a lot of important work, so you need to send a few engineers to that team to help out. Putting the overall company goals first is key in a moment like this.

Building the right thing means getting everyone rallied behind the same mission, in the same direction, while at the same time giving each team as much autonomy as they need to enable each individual to do their best work.

Keeping your culture

During my interviews at Remote and even in conversations with friends, I often get the question: "How are you keeping your culture?" It is a valid question. Introducing many new people, from different backgrounds, different cultures, creates a big potpourri of opinions, values, and thoughts.

This is a topic you should not ignore. You will not come back from cultural mishandling if you fail to address it. If you start out by not caring about values alignment in your team, you will pay for it quite early on. Make sure to have a set of values that influence everything you do, especially hiring.

Change, change, and change

This is what it ultimately comes down to. Change. Hyper growth means change. In every aspect of yourself, your teams, and your organization.

Acknowledging that, speaking openly about it, supporting your leaders and teams, is well worth the effort. There isn't much else you can do about this. You want change. It is part of the growth, so don't hate it, don't fight it — embrace it.

What areas am I focusing on?

What is it that I, as an engineering manager of multiple teams, am focused on? Great question. Let me share a few of the topics I confront day in and day out.

Processes: To use or not, that is the question

We've been intentional about not introducing too many unnecessary processes. Things are moving fast, and we want to keep it that way. Still keeping in mind that we need to build the right thing for our customers.

I think with my next sentence I will likely make some friends and enemies at the same time, so bear with me. Ceremonies are cool and all, but I don't think they are always helpful. Especially not in a virtual, async, and fast-paced environment. I really appreciated that coming into the company. I was never a big fan of meetings just for the sake of having a ceremony.

You can very easily over-engineer a system. Sprint meetings, estimation meetings, daily standups, retro meetings, etc. Putting too many ceremonies and processes in place isn't the solution in our eyes. Instead, focus on the hyper growth moment (where your system is constantly going to be stretched) and embrace the fact that it will be challenging and even a bit chaotic.

Hiring awesome folks

Hiring plays a big role. Growth means increasing the size of something. It’s very likely this will include the number of people in your company. We have been hiring for a while here at Remote and are continuing to do so with great speed. You can see our job postings here!

We are not just throwing more people into solving complex problems, though. We actually do need more hands on deck with everything we have planned.

Lean on your people team, also known as HR in many companies. They know what they are doing and can support you and the new joiners in the best way possible. But make sure you align with the needs of your team and area.

Keep diversity and inclusivity in mind when writing your job descriptions and building your hiring pipeline. You want to catch biases and bad behavior as early as possible. As I stated above, disrupting your teams and their alignment early on is not a price you want to pay.

I also see it as part of my job to create an environment where people want to stay. Of course, this is not just my job. But hyper growth means change, and early hires still need a sense of stability.

Onboarding and training

After hiring, the next-most important step is onboarding. You need to bring in all the people you just hired. Sometimes we don't know the exact teams yet. Sometimes the teams are actually still forming — that’s what hyper growth is like. Take this into consideration and make sure to create a higher level plan, plus a tracking database, so you know who is joining when and into which team.

We also use a buddy system, which I have seen work well over my past years at remote companies. This helps the new joiner adapt to the culture and have someone to ask for help. It can sometimes be scary to ask an open question in a channel of over 800 people.

Our first week of onboarding is the same for everyone, regardless of their location and function. The advantage of being fully distributed allows us to give everyone the same experience.

After week one, we try to get our engineers into our codebase as early as it makes sense. There is no stress attached to it — just making sure that they are able to write some code in a timely fashion. Most of the time, week two of your journey is focused on engineering-related onboarding topics, getting you into our codebase.

Rigid teams are from the past

Another thing that I wanted to highlight is the fact that in hyper growth mode, flexibility reigns. Teams shouldn't behave rigidly. Focuses and goals will shift. Engineers might need to help other teams to get unblocked.

You also will have a set of engineers, the old guard, who know your product in and out. But they are limited. Hyper growth means a lot of people coming into the organization in a short period of time. Shield the old guard engineers from being spread too thin, as their knowledge is a highly regarded resource.

Instilling this flexibility into my teams has helped see the bigger picture and be OK with changes.

Toolkit for virtual engineering leaders in times of hyper growth

Having seen both sides, slow and hyper growth, I noticed some similarities and some differences. Everything you learn or need while growing is going to be important nonetheless. Overall, being a kind, honest, and empathetic human being gets you a long way.

To help with a few more actionable inputs, here are seven skills that I deem the essentials. These are essentials in good virtual and human leadership that will also help you get through a hyper growth period without too much anxiety. Here we go.

1. Communication is key.

This feels almost boring. But I can't state this enough. With communication, everything falls or rises.

Communicate often and transparently, even when it might feel a bit uncomfortable. Document everything. Record all hands and team meetings. Make it possible for engineers to get as much focus time as possible, and lean on async communication wherever you can. This is a practice you can read about in our public handbook.

If people don't know answers to certain topics, give them pointers on where they can go digging for more information themselves. Introduce them to people who can be helpful. Just don't hide anything — make it transparent and available.

2. Be resilient.

If you don't work on becoming more resilient in a hyper growth company, you will have a hard time. As I mentioned above, change is happening all around you, all the time. Not being influenced by it will be important to stay sane.

Understand what helps you stay in a good mood. Learn more about yourself to create an environment that will help you strive while everything around you might be chaotic.

Keep your emotions in check. When something is hard, remember that is part of the deal, but just because work is hard does not mean your life has to be hard, too. Your team members and leaders should be present and ready to support you.

3. Show empathy.

If you are doing things right, things will always be a bit broken. Tell all new joiners that a little bit of chaos is ok. We humans tend to act on things very differently, and as a leader you need to be aware of that.

Show empathy toward your engineers, both the newcomers and the original crew. It will be a hectic and stressful environment at times. Some engineers might need to step out of their comfort zone. Encourage them and give them support.

I am currently doing monthly skip level 1:1s with all the engineers in my teams, in addition to the normal 1:1s with my engineering team leaders to show support wherever I can. This helps me make sure no one feels alone and everyone has a channel to ask for help if needed.

4. Be authentic.

As a leader, your team, the engineers, will look to you to follow whether you like something or not. That doesn't imply any hierarchy in itself, but it is natural for a leader to have people following their cues. You are an example to them, so lead like it.

For example, don't stay on long over your normal work hours. Prevent over-working and end your day normally. Take days or weeks off. If you don’t, they won't either. This goes for everything you do. Want your team to communicate out in the open, transparently? Then don't default to direct message communication all the time.

I am not hiding the fact that this phase can be a bit scary. Maybe even you as a manager struggle sometimes. It is human to do so. Ultimately, we all are humans working together. So there is no reason to hide things from your team.

5. Give and receive feedback well.

This is an important skill, not just in a growing company but for everyone, all the time. Feedback helps everyone. When we are focused on the nitty-gritty details of our products or the code we are writing, we forget the bigger picture. Feedback is a tool that helps yourself and others to do just that. Step back.

You've probably seen a painter step back from their canvas? Why? Well, they can't see the whole picture, literally, when they are up close fixing something. They need the physical distance to see it. That is hard for you to do with virtual work and remote colleagues. We need feedback to help us pull out and look at the bigger picture.

Be courageous and curious. The word “feedback” has some negative connotations, but believe me that giving great, constructive feedback is a skill you want to have in your toolkit.

6. Manage your time.

While growth can happen exponentially, your time won't. There are 24 hours in a day, and that is rock solid. The time you have at work is even less, ideally between 6-8 hours a day. Spending that time to the best of your capabilities will be a skill you learn very quickly.

I always consider my calendar like I would my physical office door. It needs to signal to everyone else, if I am available, if I am out of office, or on a quick errand. Even if they can just come in and say hi, or maybe not. Your calendar can do all this for you. Shielding your time is key. You don't want to end up with six calls in the afternoon and just 15-30 minutes slots to get actual work done.

Block time on your calendar. Add your lunch time, add your starting and stopping time. Have an appointment? Add it to the calendar. If you don't want to share details just add a "busy" event. You would do the same if you were in an office.

As a manager on a hyper growth team, this became a superpower for me. I had days with four interview slots, three1:1s, and two team calls. I wasn't able to get anything else done. Yes, this is part of my work, but getting deep work time is impossible in scenarios like this. I learned my lesson. Now, hiring interviews are limited to two per day and only on certain days. I have days with calls and focus work around certain areas, so I have to context switch as little as possible.

7. Learn and grow with it.

Adapt, scale yourself, and embrace the change. Learning quickly, especially outside of your own skill set, is going to be the best thing you can do. Accept the failure that might happen — that is ok. Get the feedback, share it with others.

Don't get hung up on a problem you can't fix yourself. Attack it, not alone but with your peers. Being part of a hyper growth team will grow you too. Only if you are receptive to it, though. Don't waste the opportunity.

Journal, take notes, reflect, and do anything that will help you to take the most out of a situation like this. Stay open minded and be excited to jump on new opportunities.

Buckle up!

So yeah, buckle up, friend. It is going to be a ride. It will be exciting and fun, but it will also be challenging. I am not hiding that fact. Embrace it, be open, and learn.

I don't like the metaphor of a rollercoaster that much, but it works. There will be ups, there will be downs. You will be anxious when you see a hill or a fall. But in the end, when you get out of the car, you'll smile and be glad you were on it. And maybe even get a picture as a reminder.