Taking Decisions in Engineering Teams
Strategies for Effective Decision-Making in Engineering Environments
After 10 years working at the same company and leading almost the same people, today I rarely experience issues when it comes to taking decisions.
However, I remember this scenario being quite different when I first became an Engineering Manager, often struggling with all the issues that can arise from decision-making if not approached correctly.
Reflecting on it today, I've gone through many different decision-making processes, used many different approaches and experienced the pros and cons of most of them.
Unfortunately, I can't tell you which approach works best, as it depends on a myriad of variables. However, what I can do is share my thought process when it comes to decision-making, in the hope of inspiring your reflection on this crucial aspect of leadership.
Today we will explore:
🤔 The importance of establishing solid decision-making processes
👷🏻♂️ Decision making in Engineering Teams
Types of decisions in engineering teams and influencing factors
Different approaches to decision-making
🛠️ Frameworks for effective decision-making
🔥 Tips and resources
There's a lot to cover, so let's dive in!
🚀 Typo - Ship Reliable Software Faster
Typo is an intelligent software delivery optimization platform that enables modern dev teams with tools to gain real-time SDLC visibility, improve code health, and measure developer experience - via a single dashboard!
Typo is sponsoring this newsletter issue and is offering The Hybrid Hacker readers a 30% discount on their paid plan (just contact them and say you are coming from The Hybrid Hacker newsletter).
🤔 The Importance of Decision Making
Taking decisions is arguably one of the most frequent activities every human engages in throughout their lives.
Every action we perform involves some level of decision-making. We decide when to wake up, what to eat, whether to go out for a walk or to relax on the sofa watching TV. Virtually everything involves decisions, and while many of these decisions are unconscious (or perhaps driven by our body needs like sleep and hunger), making decisions can still be challenging at times.
Now, if it’s already challenging to take decisions for ourselves, imagine the complexities involved in decision-making within an engineering team, where multiple individuals, possibly from diverse cultures and backgrounds, are involved.
This isn't meant to intimidate you but to acknowledge that struggling with decision-making while leading a team is absolutely normal.
However, decision-making is a crucial aspect of leading or managing a team, and here are a few reasons why I believe it's so important:
🔥 Focuses Effort: having effective decision-making processes ensures all team members are aligned and working towards common goals.
🔄 Ensures Consistency: maintaining a consistent approach to decision-making fosters a sense of fairness and equality within the team.
⏳ Saves Time: since all decision-making processes have different time requirements, knowing when to use one or the other can save you a significant amount of time.
🧭 Provides Direction: established processes guide teams in making decisions that align with overall objectives and strategies.
🛡️ Builds Resilience: robust decision-making processes help teams to handle unforeseen challenges and bounce back from setbacks.
👷 Decision Making in Engineering Teams
Before diving into how to approach decision making, it's important to understand its mechanics, especially within engineering teams.
From my experience, in 99% of cases, decision-making in an engineering team involves identifying the best path forward in these four key areas:
💻 Technical Decisions
What? Choosing technologies, tools, and methods.
Why Important? Impacts product quality and future updates.
🗂️ Project Management
What? Planning, allocating resources, and scheduling.
Why Important? Ensures projects stay on track and within budget.
🎯 Strategic Decisions
What? Setting long-term goals, hiring, budgeting, etc.
Why Important? Directs the team towards growth.
🏛️ Cultural Decisions
What? Defining team values, norms, and practices.
Why Important? Shapes the team's work environment and influences collaboration, morale, and people satisfaction.
Different Approaches in Decision Making
Decision-making can leverage a variety of approaches, each with its unique advantages and limitations.
Particularly, two crucial aspects of a decision are:
Speed: how quickly a decision can be made.
Democracy Level: the extent to which team members participate in the decision-making process. The more democratic a process is, the more responsibility is shared among team members.
Here are a few common approaches to decision-making:
🪖 Autocratic: one person makes decisions without input from the others. This approach is for sure the faster, but it’s also the less democratic. Responsibility is individual.