You don't build 10x team by hiring 10x engineer

You don't build 10x team by hiring 10x engineer

2020, Mar 23    

Your organization is growing like crazy. Doubling the size of the organization in a year is too slow. You’ve hired the “10x engineers”, you’ve created the team based on the Spotify model with squads, chapters, guilds and tribes. You’ve hired Agile coaches, and you’ve even changed the title of “manager” to “Scrum Master”. So why haven’t you still seen any performance uplift? Instead, the production is still on fire, the launch of the new feature keeps delaying and people are still leaving.

Truth is, hiring 10x engineers does not make you 10x teams. In this article, I’m going to introduce the key characteristics of a 10x team and how you can start building a 10x team.

Note: The term “10x team” is actually a subset of “high performing teams” as a high performing team delivers more than 10 times the performance uplift. However, in this article, I will use the terms interchangeably as “10x teams” is easier to remember.

Team and Organization

“[a] team is a group of people who are interdependent with respect to information, resources, knowledge and skills and who seek to combine their efforts to achieve a common goal” Leigh Thompson, 2008

A team is an organic unit of an organization. Like the deliverable of a developer is code, the organizational structure is the deliverable of the leadership team. An organizational restructure is similar to code refactoring. The organizational structure is initially setup to address a company’s specific challenges at a time, and it evolves as problems change. Yet in reality, most organizational restructure is triggered by leadership change, not the challenge. This is why the Spotify model doesn’t work for your organization, because the challenge behind it is different, so copying an organizational model without considering the organization’s challenges as well as people and culture, is the same as copying a piece of code from a random place to solve your specific requirement. The chance of it working is near zero.

With hiring, you often end up with a “group of people”, not a team. Team building is an essential capability that every organization needs to have and a core capability for everyone, not only leaders. In today’s practice, it’s an under-valued capability, relying on the organic nature of the leaders.

Best practices can be alluring and misleading, it suggests a unified way to solve problems despite the context and encourages a fixed mindset, ignoring the fact that we’re in a complex and dynamic system.

Can I build a 10x team by hiring 10x engineers?

The short answer is: No, you can’t. Imagine the scenario where you have a great dev, a great product manager and a great design, but what happens if they don’t communicate with each other? “10x engineers” is an anti-pattern that encourages a “superhero” culture, which is not a sustainable practice from many perspectives. For an organization, hiring 10x engineers really means you’re in for a “short term gain, long term pain”.

Here are some reasons why hiring 10x engineers does not get you a 10x team:

  • Firstly, 10x engineers are rare and hard to find;
  • The complexity of work has increased, so that no one person can do all of the things by themselves;
  • Very quickly they become a single point of failure for the team as they “can’t teach others on what do do”, thus they become the only one who knows about their code; and
  • Collaboration might suffer as they “hate meetings”, “timing in the office is highly irregular”, “poor interviewers” according to the twitter definition of “10x engineer”. Software development is a team sport (ThoughtWorks Technology Radar, Vol. 21, 2019)

There are many factors you need to consider to build a 10x team. My favorite approach is to view the team as a butterfly, the left wing is the “work”, the right wing is the “outcome”, and in the middle is the “team”. The process of building a high performing team is very much like the process of how a caterpillar transforms into a butterfly - they have to rearrange, grow and even disintegrate in order to radically transform.

butterfly team view

Towards Platform Organization

In software, monolith is used to describe a single logical application that is normally challenging to scale, it’s normally made up of 3 components: a database, a client-side application and a server-side application. If you make one change at any part of the application, you will have to update the entire system. Microservice is instead a set of distributed, independent services that can be developed, deployed and operated separately. We’re living in the VUCA world, facing the challenge of Volatility, Uncertainty, Complexity and Ambiguity everyday. Traditional companies work in a linear way, shooting a moving target with outdated static approach is impossible. Ideally the new organization model shall be able to support the company to identify and respond to arising opportunities fast. It is very challenging to make a monolith application run as fast as a microservice, is it even possible to have a company with 5000+ people act as fast as a company with 100 people?

RenDanHeYi model from Haier provides a great answer to this question, this is possible. Haier is the world’s number one home appliance manufacture, an organization with more than 70,000 employees. With RenDanHeYi model, Haier is moving away from a centralised enterprise into a platform organization with 4000+ micro-entreprises. Despite the 1% market decline, the sales are up 11%. As CEO Zhang Ruimin says:

With the RenDanHeYi model we truly enter the network age. But the network aspect is not even the most important. What is more important is that we no longer try to delegate to, or ‘empower’, employees.

The core of RenDanHeYi model is to create aligned autonomy, to have the team own a micro-business, from customer to delivery to operation. To give the team responsibility, ownership and the according decision making power. They truly become entrepreneurs and become a self-organizing micro-business.

ThoughtWorks, as a global software consultancy, we constantly crafting the skill of building high performance teams. Given the nature of the business, we have to get high performance teams running in weeks, rather than months. We shared similar thinking around “platform organization” and teams are owning the success of delivery for clients, rather than only executing according to plan. The team has the power to suggest and make changes as needed to ensure the success of delivery. We build teams with the consideration that teams shall be able to have the capability to own answers for following three questions:

  • Are we working on the right thing?
  • Are we doing it in the right way?
  • Are we getting them done well?

This way, each team is a self-organizing micro-business and is accountable for the success of the client.

What Are The Key Characteristics of a 10x Team?

Based on our experience, we would like to share our learnings with you about what are the key characteristics of a 10x team, or high performance team.

1. Purpose and Aligned Autonomy

Team shall have a good shared understanding about what’s the company goal, why this team is needed and how could this team contribute to the wider company goal. This also includes a high level understanding of the workflow, who is the customer, where does the work come from, who do we work with and what’s the definition of done.

2. Value-driven

Team shall understand the value of the work and how it is being measured. This will help the team to focus on the right thing to deliver value as the highest priority, rather than the volume of work.

3. Fast Feedback Loop

Team has a feedback loop in place to provide real-time visibility/baseline/progress about value, strategy alignment, type of work, quality, speed, team and everything that the team cares about. This means you don’t wait for production incidents to find the bug, you could stop failed experiments at the earliest time possible and more.

4. Continuous Improvement

Team actions on continuous improvement as part of everything they do, rather than something separate.

5. Learning & Sharing

Team embraces learning & sharing culture, is part of the work. Everyone is contributing to it and the team learns from both success and failure. This evolves the capability of the team.

6. Shared Ownership

Team owns the code base, as well as activities, processes and decisions around the code base. This avoids the situation of single point of failure, yet requires high level team disciplines.

7. Collaborative Communication

Everyone on the team gets a chance to talk. Team works collaboratively, uses the right communication approach for right situations as needed. Everyone has equal access to the information to perform the work and improve the work. This differs from communication that is purely documentation-driven, email-driven or one-way only communication.

8. Empathetic

Team has a shared understanding around what different role do as part of the value stream, work with different roles, get others involved earlier rather than handover. It’s important to have empathy with customer.

9. Cross-functional

Team has the capability of being required to be accountable for the value creation, rather than a silo-ed functional team, for e.g: a development team, a testing team. Bring specialist into cross-functional team, minimize handover and waste.

10. Psychology Safety

Create a safe environment for the team to bring their whole self to work. Team has a shared belief and a sense of confidence that the team will not embarrass,reject or punish someone for someone to speak up.

Get started to build your 10x team

Here are my suggested steps to start building your 10x team, create a safe environment for the team to bring their whole self to work is the key, two indicators are “conversational turn-taking” and “average social sensitivity”. Without a safe environment, it’s impossible to conduct any effective activities.

  • Start with “Purpose and Aligned Autonomy”, to ensure there is a clear purpose defined, the team is aligned from strategy for both the work they’re working on as well as the outcome.
  • Work on what value means for customers, the company, the team and the team members.
  • Visualize the feedback loops needed and action to gaps by focusing on crafting the delivery and engineering practices.
  • Repeat

References:

  • https://corporate-rebels.com/rendanheyi-forum
  • https://rework.withgoogle.com/blog/five-keys-to-a-successful-google-team/