Menu background

#Management

The Ultimate Guide to Building High-Performance Teams in Tech

Dorottya CsikaiDorottya Csikai
2022-10-12

Receive our best content two weeks before anyone else! Join 5000+ tech leaders and managers.

The Ultimate Guide to Building High-Performance Teams in Tech - Interview with Álvaro Moya (Founder, LIDR.co)

Building high-performance teams is far from trivial. 

Your job as a leader is to get the performance metrics right and to spot people who look for growth opportunities from the beginning.

However, you must remember that building high-performance teams isn’t just about hiring; the team and the environment they work in must enable them to make the most of their talents. 

How can you get everything right to build high-performance teams? 

Álvaro Moya, Founder of LIDR.co, shares his approach to building high-performance teams. He talks about the importance of clearly defined values and goals within the company, and he shares which areas can be improved to foster high performance.

This blog post was written based on episode 71 of the Level-up Engineering podcast hosted by Karolina Toth.

This post covers:

How do you define high performance in engineering teams?

Maximize opportunities

For me, high performance is about getting the most out of possibilities.

It’s different for everyone, and it also depends on your role and seniority level. Being a high performer doesn’t mean the same for a junior developer and an engineering manager. You can get the most out of their talents in different ways. 

High performers vs. high-performance teams

High performance depends on the individuals and the team itself. As a person, you can be a high performer, but you also need a strong team to succeed. 

The role of the manager isn’t just to hire the best people, but it is also to create an environment where they can thrive. High performance is about people who are capable and motivated to reach the highest level of performance by themselves, and it’s about building a great environment for them to thrive in.

What tools and metrics do you use to measure performance in software engineering?

Most companies are too focused on the delivery and the outcome of their team. They measure the performance of their employees through what they deliver and how it impacts the business. 

With this method, they can measure that the team is delivering code at a repeatable pace, and they can estimate what they can get done in the next sprint. If they can improve work quality and velocity by using this metric, it’s great.

The problem with this approach is that it doesn’t always measure the impact and high performance accurately. I tend to focus on a more holistic approach, and I encourage leaders to create an environment where trust, security, open communication, and autonomy are given. 

Employee satisfaction

Employee satisfaction, or eNPS, is the most important value metric for me. It’s hard to pinpoint exactly how satisfied your team members are with their jobs, but you can ask them why they’re doing what they do and what the outcome is. 

Business outcome

High-performance teams have clarity about what the business goal is and how they’re going to achieve it. They know what’s most important in the current quarter and how those goals are broken down into technical tasks. It enables them to take action and start planning, designing, and developing the right thing.

There’s no point in delivering faster or with better quality if the team is building the wrong thing in the first place. In a high-performance team, people understand their impact on the business. They look beyond delivery pace or velocity; they focus on the impact of their work. Instead of merely refining smaller areas, like effective planning and on-time delivery, they see the bigger picture, and they understand why improving these areas is important.

What are the steps to building high-performance teams? 

Give them SPACE

To create the environment where people can see the bigger picture, I follow the SPACE framework. It describes the areas you can work on as an engineering leader in order to improve employee satisfaction and business outcomes. SPACE stands for:

  • Satisfaction
  • Performance
  • Activity
  • Communication
  • Efficiency

Define areas for improvement

You can go through these areas to see if any of them need improvement, so you can set actionable goals. For example, if you want more autonomy for your teams, you might need to improve their communication. You can improve the documentation system, so they can make decisions easier, and they don’t rely on anyone else’s agenda to solve problems.

Don’t do it all at once

There are five areas in this framework, but you shouldn’t try to focus on all of them at the same time. Two or three areas are more manageable. You can discuss which areas to work on first with your team - start with the one that needs the most improvement.

Focus on getting all areas on an acceptable level first. Once you’ve reached that state, you can further iterate each aspect with a focus on the natural strengths of the group, and reach an environment where your team can thrive. 

Remember that each team is different

Some teams’ pain points are efficiency and performance. Others need to focus on satisfaction and well-being.

This means that the solution is different for every team. Sometimes, it’s a tool, and other times, it’s a new process or ritual. It can also be as simple as having more conversations with your team.

How do you start improving a team’s performance?

Determine key values

The key ingredients to high performing teams are trust, autonomy, and ownership. That’s what I improve.

I also take into account what matters for each team, and what high performance means for them. I can help them understand the five areas of the SPACE framework, and I can provide guidance, but ultimately, they decide what to work on. 

Set action items

I also involve the teams to set up action items.

I prefer brainstorming and coming up with ideas together, even if I have my own methods in mind. With the collective knowledge of just a few people, plenty of ideas and actionable steps can come up. It’s a great morale booster, because they know they’re choosing from their own ideas, and they can feel proud of what they’ve come up with during the brainstorming session.

If you involve the team in this step, you’re also fostering ownership. They’re the ones giving ideas instead of blindly following your instructions, and they’re responsible for the changes that will happen. You’re facilitating decisions, like a coach.

What aspects should high-performance teams prioritize? 

Communication & collaboration

Communication and collaboration are the most important, because they provide clarity. Clarity on the roles, clarity on how to climb the career ladder, clarity about the team and its channels and practices. Communication with other teams is also important so that you collaborate more effectively.

Once you have defined and communicated the business goals, you can break them down into technical tasks, and the team can go to work. If tasks are clearly defined, team members don’t need to be in constant contact with each other, in person or remotely. They know what the next sprint’s goals are, and they can work on their designated responsibilities independently. 

Business before technology

In terms of priorities, business is the most important, and technology enables the business to make money. For tech companies, tech itself is a product and a business at the same time, but the business has to make money. 

That’s why tech teams need to think in business terms. I can grow this perspective in them if I burst the bubble of tech teams and expose them to the rest of their environment. I can encourage them to interact with other departments so they try something new and leave their comfort zone.

Company values above all

You have to define the company values, and you can facilitate these values as a cultural inspector. Celebrate and encourage behaviours you want to foster, and be strict about what you don’t allow. Set clear boundaries, so people know exactly what is expected of them.

These expectations can support high performance.

For example, you can communicate that you don’t encourage mediocre results and that you expect your team to pay close attention to details, because any lack of attention affects your customers. If you allow mediocrity, your employees won’t be motivated to do their best at work, because they’re treated the same regardless of their efforts. 

Intrinsic motivation

When new hires ask about company values, I know they’d be a great addition to our team, because they care about these aspects of the job. They understand the importance of shared values, and pushing towards the final mission while staying aligned with these values motivates them. 

Money cannot buy this type of motivation because it’s intrinsic. I learned this from Drive by Dan Pink, one of the best books for teams. It breaks down intrinsic motivation into three areas: mastery, autonomy, and purpose.

What can leaders do to build high-performance teams? 

Make the effort

Code is easy to alter to make it work better. Doing the same with people takes a lot of time and effort. The more people you have on your team, the more difficult your job is as a leader. 

You’ll have to make a conscious effort to allocate time for your team.

If you want to create a high-performance atmosphere, you have to be consistent. Day after day, you have to be clear about what you value and what you don’t tolerate. Your team will align with these values, and you’ll create psychological safety and a collaborative work environment as a result.

Promote mastery

Mastery is about being the best version of yourself. You can achieve mastery when you’re doing something achievable yet challenging.

In order to create such challenges for your team, you need to get to know each team member and what they’re passionate about. Ideally, the challenge isn’t just about being achievable, but it’s also something that they’d like to pursue.

Set the right challenges

It’s important to communicate with your teams’ managers to see if the challenges you set for them are manageable or if they’ll need to prioritize something else at the moment. This way, you’ll give them new challenges at the right time. 

You don’t need to worry about finding the right level of challenge. As long as communication and trust are present in a team, they can launch their own challenges, and you only need to determine whether these are aligned with the company. 

If the team members don’t have enough experience to decide on their own challenges, create a discussion about it. Ask them about their opinion, whether they think a challenge is achievable, and whether they’re motivated to do it. This preliminary conversation can avoid burnout and stress, and it can decrease turnover rates

Time and task management

You can promote high-performance by helping your team protect their time, and enable them to be in flow as much as possible. Most developers need long time blocks to be in flow because writing code is creative work for them. Think about how your team operates and how many time blocks your developers have from Monday to Friday.

It’s equally important to think about the workload they have; if they have lots of different tasks, it’s harder to concentrate and spend enough time on each. Reduce their scope of work and multi-tasking to help them ignore distractions. It helps improve their performance, and it can raise team efficiency.

Look for balance 

Communication is the first thing you need to work on in high-performance teams. Unfortunately, in the world of tech, we tend not to be great communicators. We focus on sharpening technical skills instead of soft skills

I consider someone a good professional if his skills are balanced—people can rely on him, even if he’s not an expert in everything.

There is no such thing as a Most Valuable Player (MVP) in high-performance teams. We achieve goals together. If we win, we all win. If we lose, we all lose. We’re competing against ourselves by trying to achieve our own goals. 

When you’re clear about these values, and your team members understand that they don’t need to be rockstars individually, they’ll focus less on their individual performance. They’ll co-create and improve an environment where they can collaborate, combining their strengths and thriving as a team.

Creating a high-performance environment has to be teamwork, not only the manager’s responsibility. The manager enables them to create the best environment for themselves. 

Stress the importance of soft skills

Communication helps team members understand how the company works and operates. If they have a better understanding of these processes, you empower them to become entrepreneurs or potential intrapreneurs in the company. 

Unfortunately, the importance of psychological safety and soft skills is still overlooked. My mission is to raise this awareness, and encourage teams to improve their environments. It takes time, but the long-term effects are worth it.

Hire slow, fire fast

When a person isn’t performing like they’re expected to, follow the adage of “hire slow, fire fast.” Don’t send the wrong message to the team that low performance is allowed. Hire slowly to find the best team members with growth mindsets, but fire fast when they go against the values of the company.

What are some of the characteristics that you look for when you want to hire high performers?

Autonomy

I love to hire freelancers. People who have been freelancers for a while and are willing to be employees are great because they have experienced working autonomously for a long time. 

They have been a startup of one, and they learned how to take care of their brand, their clients, and their operations to be efficient. They can look for solutions on their own, because they have always had to solve challenges alone as freelancers.

Entrepreneurial spirit

Aside from freelancers, I look for entrepreneurial engineers with a “can-do” attitude. They tend to ask questions about opportunities in the company, how much autonomy they’ll have, or what learning opportunities are available for them. 

When interviewing with such people, I can sense that they’re willing to go to the next level for themselves, and they are looking for growth. They aren’t looking for a comfortable job but one where they can grow and reach their full potential. 

When they ask questions about the environment and their potential role, I can sense that they are serious about improving themselves, and they try to determine if we can enable that. Once you have your eyes and ears trained to spot such ambition, you can spot valuable people who look for growth opportunities.

Building a high-performance team from scratch

Four years ago, I joined an existing company with an established culture. However, there was no tech team. They relied on an outsourcing company to build their product, and I needed to create the team from scratch to keep building the product in-house after we had validated traction in the market. 

There was a lot of pressure because I needed to do it quickly.

I managed to negotiate the budget for our in-house team. I hired fewer but more senior people than they were initially planning. They helped me save the company culture, which was the most important thing for me.

I delegated the technological part of my job because I knew I had to prioritize other areas in that short deadline. 

Creating high-performing teams, not individuals, was also achievable because the values of the company were part of the performance review. These values were related to high-performing teams, and they included ownership, autonomy, innovation, and continuous improvement. My role as a CTO was setting clear actions so we could evaluate how the teams were working towards company values by the end of the quarter.

This was a powerful way of building high-performance teams. The technology and the way teams operated were open for discussion, but the values were set from the beginning.

About Álvaro Moya

Álvaro Moya is the Founder of LIDR.co and an experienced CTO. In 12 years, he has walked the path from software developer to leading large technology teams in high-growth companies, such as Wefox or Revolut. During this time, he has mentored hundreds of engineers to help them make the transition to management and develop successful career plans. 

Let's build awesome things together 🚀

At Apex Lab, we're experts in end-to-end digital product development. Our remote-first company operates with a flexible schedule, allowing us to help clients tackle difficult challenges worldwide.

Want us to build your next idea or upgrade your existing product? Our experts cannot wait to work with you. Get in touch with us and let's make this happen. 💡🚀