An IT project is never an end in itself, but a means to attain a business objective. In this day and age, when leaders and decision-makers are exposed to buzzwords, frameworks, and tech trends constantly, it is more important than ever to take a step back and reflect on the business goal before deciding on the technological way to get there .
Decades after the advent of information technology, the challenge remains the same: to successfully apply IT practices that improve revenue streams and unlock new DevOps opportunities. Organizations urgently need to establish frameworks to manage information systems and apply them to daily operations, contributing to delivering business value and improving economic performance.
However, a significant amount of DevOps practices still used today were borrowed from the automobile industry. While these worked in assembly lines and were a good starting point for IT and DevOps, they need to be reviewed and refreshed to stay relevant in today’s tech world. These updated techniques include:
Strict Hierarchies and Execution From the Top–Down: Teams that are organized with a strict division of labor end up creating siloed working areas, compromising the common goal.
Strict Waterfall: The business value is released in huge cycles, lacking validation as the project goes along.
It is important for business leaders to keep their eyes on the outcome. In this article, we will see ways to separate the “what” from the “how,” providing decision-makers with some tips they can use in their challenging day-to-day work.
The Connection Between Methodology and Outcome Is Not Always Evident
In tech companies, methodologies are usually a concern of engineering teams, rather than a decision from the executive team. In most cases, decision-makers at the business level don’t have a detailed understanding of what the engineers do or how they organize to get the job done.
In the same way, the executive team doesn’t have a detailed understanding of what other teams at the company do; for example, sales, marketing, or operations. But this is ok, as it’s not their job. Their job is to have an overview of the activities of the different teams and coordinate how they fit together to reach the company-level goals.
Therefore, it’s the responsibility of engineering management to “translate” the team’s work to the organization’s executive team. When done correctly, the organization as a whole has a better understanding of the value the engineering team provides. The executive team gets the feeling they can more accurately forecast the engineering team’s work and, thus, fit it into the higher-level planning.
How to Translate Engineering’s Day-to-Day Value to Executives
The job of engineering management is to make this translation as easy as possible, but that is a hard job. Here are some tips to help:
1. Link Development Metrics to the General Organization’s Goals
In the same way that sales has a dashboard with metrics, engineering should have one too. When building this metrics dashboard, focus on indicators that monitor the quality of the software rather than quantitative indicators such as the number of lines of code, or bugs reported.
2. Make your Executive Team Understand Software Development Forecasting
The CEO of a company can look at the sales team’s dashboard and understand a few basic metrics, such as whether or not the goals are in line with the organization’s objectives or not.
If engineering creates the dashboard mentioned on point #1, the next step is to make the executive team be able to read and understand it on their own, just so they can start driving conclusions on their own. The goal is to make them be able to measure the process of software development, not just the outcome.
3. Focus on Cross-Team Relationships
It’s challenging for other teams across the company to understand the day-to-day of developers and engineers. However, if you can teach them to understand the dynamics and importance of it, you can drastically improve the way the organization sees their work and, better yet, how the rest of the organization interacts with the engineering team members.
For example, if you teach them why developers need to focus and enter a flow of uninterrupted work, it becomes easier for other people at the company to manage their expectations of, say, how long a developer takes to answer their emails.
4. Establish a Connection Between Developers, the Product, and the Customer
The developers are the ones building the product but, oftentimes, they have zero contact with the customer. Many don’t ever get to see how their builds solve the problem it was intended to solve in the first place. They build it, it is finished on the developer’s side.
Take a moment to ponder how limiting this is. A study done in 2014 revealed that cooks make food 10% tasty when they can see their customers while in the process of preparing the food. This is very explained by the fact that, as humans, whenever we find purpose in our job, we tend to perform better. Treat your developers as humans and not just as another piece in a bigger puzzle.
By following these tips, you contribute to making the whole process of software development a much more holistic one. It stops being about siloed individuals performing duties that will, somehow, fit into a bigger picture they can’t see. And it starts being about united teams that work creatively on a problem they take into their own hands.
Why You Need To Choose the Right Outcome-Driven Plan
In 1968, mathematician and programmer Dr. Melvin Conway stated in a paper submitted to the Harvard Business Review something that would become known as “Conway’s Law:”
“Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.”
In simple terms, the idea conveyed by Conway is that organizations need to shape themselves to the image of the outcome they want to achieve. Therefore, when assessing ways of working, the management team should always keep in mind the outcome and shape the teams, processes, and structures to better fit the desired outcome.
One way to achieve this desired outcome is to incorporate DevOps into the organization. The different approaches and methodologies need to come together under one driving force, and that is exactly what DevOps lets you achieve.
At the core of DevOps lies self-organizing teams of different disciplines that come together at the beginning of a project and create feedback loops that will constantly improve the outcome produced. DevOps will also automate the tasks that can be automated and free up time and headspace for team members to focus on what really matters: delivering business value.
While this might sound obvious, the truth is that nearly 50 years after Conway’s research was first published, organizations still struggle to achieve business results by making use of IT.
How To Assess Methods With an Outcome-Driven Mindset
Product managers usually work based on a product roadmap composed of a list of features handed down to them by top management. Their job is then to drive the team to build and deliver such features.
However, it can happen that all the features get done and still the wrong product is built. Why? Because features are a consequence of a step that must precede them: problems.
As a product manager, instead of talking about features, try making the conversation about problems you need to address and outcomes that the team should achieve.
Let’s say you’re building a CIAM platform, where you will manage your users. Instead of thinking of a feature such as “users must have roles and permissions,” clarify the problem: “There must be a differentiation in these users in terms of what they can see and do.”
Now, think about the outcome: What will it look like for an admin user who is managing end-users on this platform? What will they be able to do?
When doing this shift, it is important to still keep these measurable goals, for example by keeping them SMART: Specific, Measurable, Achievable, Relevant, and Time-Bound. When adopting this way of working, based on problems rather than on features, you will realize several benefits:
It gives more autonomy to teams, allowing each member to contribute with their expertise.
The whole team can own the problem and understand when it is solved.
The Product Manager will deliver the outcome, not the feature.
The team stops delivering features that customers don’t want.
The team gets more creative when asked to solve issues.
The team might focus on improving existing features, and achieving a solution to the problem rather than creating new features.
Successful IT organizations know how to link the three main elements of software delivery: people, processes, and technology. This triad is the key to making teams and companies thrive and deliver outstanding products and projects that solve real-life problems for their users.
As technology evolves, automation becomes more available and DevOps practices become an essential part of any delivery team. Ignoring them is failing to leverage the power of technology to stimulate productivity and generate business value. It is failing the people in the organizations and the processes they have worked hard to put in place.