In my ten years as a FinOps professional, I’ve faced many challenges, but the most significant has been bridging the gap in the relationships between engineering and DevOps teams. This gap is both our biggest challenge and the key to success in efficient cloud cost management. These teams often see things differently, especially when it comes to budgeting and financial constraints.
Over the past three years, I’ve had the privilege of working with an external supervisor in organizational psychology. This experience has equipped me with valuable methods to help these teams see eye to eye and realize that they can both benefit and reach their KPIs through collaboration. Here I’m excited to share six tactics that can bridge these gaps and foster better collaboration between engineering and DevOps teams.
Understanding the Landscape
The DevOps Perspective
As DevOps practitioners, our primary focus is optimizing cloud costs and the operational side of things. We are concerned with infrastructure optimization, budgets, cost allocation, and financial accountability. Our role is to ensure that the organization’s cloud spending is efficient, transparent, and aligned with business objectives.
The engineer perspective
On the other hand, cloud engineers are driven by innovation, speed, and operational efficiency. They work tirelessly to develop and deploy new features, maintain uptime, and ensure that systems run smoothly. Budgets and cost constraints are often seen as secondary concerns, or even obstacles, to their primary mission. Their main focus is on creating robust, scalable solutions and minimizing downtime, which can sometimes conflict with the financial oversight responsibilities of FinOps.
The clash of priorities
The Initial resistance
In one of my early roles, I was tasked with implementing a new cloud cost management strategy. The engineering team was resistant. They felt that financial constraints would stifle their creativity and slow down their progress. I remember a senior engineer saying, “We’re here to build, not to worry about budgets.”
Finding common ground
To address this resistance, I realized I needed to build trust and understanding between our teams. Here’s how I approached it:
- Educating engineers about shared goals
I started with a series of workshops to explain the importance of cloud cost management. I highlighted how optimizing costs and cut out unnecessary costs on cloud waste, would in fact free up resources for more innovation and development. By showing the engineers the bigger picture, I was able to align our goals. This promotes a win-win situation where both teams thrive, as FinOps achieves cost efficiency and engineers gain more budget for their critical projects. - Rewards and incentives
Introducing rewards and incentive programs was for me the most efficient way to built cloud cost accountability within the engineering teams. We established both individual and team-level incentives for reaching KPIs. These KPIs were focused on identifying and implementing cost-saving measures. This not only motivated the team but also fostered a sense of ownership and accountability. - Collaborative goals
We set up joint goals for formulating our cloud policy, that balanced financial accountability with the need for innovation. For example, we aimed to cut cloud costs without compromising on the quality and speed of development. - Regular communication: Establishing regular meetings where we discussed ongoing projects, budget constraints, and potential cost-saving measures helped keep everyone on the same page. These meetings became a platform for mutual learning and collaboration.
- Feedback and evaluation Process
Implementing a feedback and evaluation process where engineering and DevOps teams can give each other constructive feedback is crucial. This process allows both teams to voice their concerns, share successes, and suggest improvements. Regular feedback sessions foster mutual respect, continuous improvement, and a deeper understanding of each other’s challenges and contributions. - Success story sharing sessions
Encouraging teams to share their success stories with the company can be incredibly motivating. These sessions provide an opportunity for teams to highlight their achievements, learn from each other’s experiences, and celebrate their contributions to the company’s success. This not only fosters a sense of pride and recognition but also promotes a culture of collaboration and continuous improvement.
Personal stories of success
Case story 1: The storage overhaul
In one company, I noticed that our storage costs were skyrocketing. After analyzing the data, I realized that many teams were using expensive storage options for data that could be archived. I worked closely with the cloud engineering team to identify less critical data and move it to cheaper storage solutions.
Initially, there was pushback. The cloud engineering team was concerned about the potential impact on performance. We conducted a pilot project to test the new storage strategy, and it showed promising results. The success of this project built trust and opened the door for more cost-saving collaborations.
Case story 2: The idle resource battle
In another instance, I discovered that numerous idle resources were left unused during off-peak hours. When I approached the engineering team with this finding, they were skeptical. To address their concerns, I proposed to automate scaling resources up or down based on demand.
We implemented the solution in a non-critical environment first. When it proved successful, we expanded it across other departments. This not only reduced our cloud costs significantly but also improved system performance. The engineering team appreciated the technical challenge and the tangible results.
Case Story 3: Rewarding cost efficiency
At another company, we introduced a rewards program for teams that consistently identified and implemented cost-saving measures. These KPIs were set collaboratively and focused on efficient cloud cost management. The rewards included individual financial bonuses and additional budget for projects or new tools. Our engineering team, motivated by these incentives, developed independently some efficient approaches to optimize their workloads in AWS, resulting in significant cost savings and improved performance.
Implement automated real-time actions that don’t require your engineers to take any action, yet amplify savings.
Building lasting relationships
Respect and empathy
One of the key lessons I’ve learned is the importance of communicating respect and empathy. Understanding the pressures and priorities of the engineering team is crucial. By showing in actions (such as rewards and incentives) and explicitly communicate that we respect their work and are not just there to impose financial constraints, we can build stronger, more cooperative relationships.
Continuous learning and adaptation
The cloud landscape is always evolving, and so should our strategies. Continuous learning and adaptation are essential. Regular training sessions, workshops, and knowledge-sharing initiatives can keep both engineering and DevOps teams up-to-date and aligned.
Celebrating joint successes
Celebrating joint successes can go a long way. Whether it’s a successful cost-saving project or a seamless deployment, acknowledging and celebrating these achievements fosters a sense of camaraderie and shared purpose.
Achieving collaborative success
Building and maintaining healthier and better relationships between engineering and DevOps teams is a journey, not a destination. It requires patience, understanding, and a willingness to learn from each other. By focusing on common goals, fostering open communication, and respecting each other’s expertise, we can create a collaborative environment that drives both innovation and financial efficiency.
Remember, the key is to see ourselves not as gatekeepers of budgets, but as partners in achieving the organization’s overall success. Together, we can build a culture of cloud cost accountability that empowers everyone to do their best work. Promoting a win-win mentality and implementing rewards and incentives can further strengthen these relationships, leading to a more cohesive and motivated team.