One year ago, our team made an investment into a self-hosted installation of GitLab.
We had been successful in delivering a managed GitLab installation at a customer site and saw the value in taking advantage of everything the platform had to offer for our internal workloads. As an AWS DevOps Competency partner, we have a successful track record of helping organizations adopt DevOps processes and we understand that the biggest challenge is often aligning an organization’s culture with DevOps principles.
GitLab’s biggest strength is that it addresses all stages of the software development lifecycle. GitLab’s features align strongly with the stages and principles our team has outlined in our DevOps process. The cornerstone of this DevOps process is that everything is delivered as code and all code is continuously version-controlled, tested, and cross-checked by peers. The marriage of GitLab’s repository tools with their built-in CI platform eliminates much of the overhead of setting up continuous integration and testing. Our team has built custom pipeline templates specifically designed around deployments using AWS, CloudFormation, Docker, Kubernetes, Terraform, and other platforms. These pipeline templates allow new projects to inherit shared knowledge and hit the ground running to deliver operational excellence with Agile development speed. We’ve also committed ourselves to share these templates and learned best practices with the community to aid others in quickly and efficiently adopting GitLab and cloud and driving new development.
Our team has designed a one-click style deployment of GitLab on AWS with high availability and security out-of-the-box. We’re using this solution to help other organizations rapidly adopt GitLab and have been successful in doing so at several government and commercial organizations. We also have a one-click GitLab Runner on AWS solution available for scalable, secure GitLab CI runners and are actively working on a one-click deployment for GitLab Runner on Azure and GCP.
GitLab has been a cornerstone of our DevOps practice, and we are just getting started. We have empowered organizations to automate software testing and deployments using GitLab as the engine, and organizations have been able to move faster and better address end-users with those abilities. We’re excited to see what organizations can do with the power that DevOps’ operational excellence gives them, and we’ve partnered with GitLab to accelerate them along that journey.
If you or your organization has more questions in regards to GitLab or our DevOps process, reach out to firstname.lastname@example.org to set up some time to chat about your business goals.
“Celebrate achievement, get better every day – this is FinOps.”
—Mat Ellis, CEO of Cloudability
Introducing the day, Mat set the stage that public cloud adoption is part of a much bigger trend seen in many industries throughout history – managing a supply chain. Milestone innovations disrupt at an astronomical scale; from the printing press, to rubber, to the internet, and now cloud computing. We’ve all felt the disruption created by cloud computing and many of us have been part of the 21st Century IT revolution. As seen at AWS re:Invent last year, the adoption of DevOps culture to foster innovation and enable competitive advantage has been embraced by large insurance organizations like Guardian and the world-famous guitar manufacturer Fender.
However, with AWS now 13 years old, many cloud technology buying decisions are still based on an outdated model. There is a need for iterative, ongoing monitoring and accounting for cloud spend. Enter Cloudability. Analyzing hundreds of millions in cloud spend per month, and billions per year, Cloudability’s platform delivers keen insights and benchmarking tools that enable a clear path to cloud cost diligence and FinOps success.
Cost Management in The Cloud Age
Digging into the data behind the mission of FinOps, Owen Rogers, Research Director, 451 Research presented some stark realities about the current state of cloud cost management (Full report available here). The study found that more than half of large enterprises worry about cloud costs on a daily basis and 80% believe that poor cloud financial management has a negative impact on their business. These enterprises need a comprehensive platform to manage multi-million-dollar cloud budgets.
Owen Rogers, Research Director, 451 Research presented some stark realities about the current state of cloud cost management
Another eye-opening data point presented was that 85% of respondents overspend their budgets, with nearly 10% spending two to four times their allocated budget. Pair this with 18% of respondents that were unaware they were overspending, and the picture is not pretty. The biggest reasons cited for not addressing this issue were “too small of an overspend to resolve” and “not wanting to hinder innovation.”
While well-intentioned, the study showed that “not wanting to hinder innovation” and pushing off a responsible approach to cloud cost management does exactly what the respondents are trying to avoid: halts cloud adoption, cripples innovation, lowers the quality of service, increases cost, and creates a sprawling underutilized cloud footprint.
Cloud Cost Management Directly Impacts Company Culture and Business Bottom Line
The reality is that cloud cost management directly impacts business. Thankfully, there are steps to take to mitigate the commonplace inefficiencies identified by Owen. For example, 33% of respondents are manually extracting and aggregating cloud costs in a spreadsheet – this is the epitome of anti-agile. Only 52% of instances are rightsized for their workload and, beyond that, only 52% of respondents are taking advantage of Reserved Instance discounts.
The tools and opportunities to improve the health and efficiency of your cloud environments are readily available. In fact, the 451 Research report shows average savings of 27% were achieved through the use of a cost management platform. With an expected CAGR of 17% between 2017-2022, now is the time to implement the behavioral changes that instill a culture of FinOps within your organization.
The problem is shared accountability – The solution is a FinOps culture
What became apparent in the research presented by Owen Rogers is a distinct need for IT and Finance teams to come to the table together to discuss the path forward. The good news is there are companies that are pushing the envelope and leading the way in diligent and responsible cloud cost management. Those who have embraced a FinOps culture are utilizing performance benchmarking and have a clear understanding of the fully-loaded costs of their cloud infrastructure. This is the promise that we can aspire to and it starts with collaboration between IT, finance, and individual lines of business.
There is a distinct need for IT and Finance teams to come together to discuss the path forward
FinOps high performers have near real-time visibility of all cloud spend. Individual teams understand their portion of total spend, are enabled to budget and track against targets, and utilize Reserved Instances for 80-95% of their cloud services.
Similar to having a clear understanding of household finances, this level of diligence affords more benefits than just cost savings. A remarkable side effect of FinOps culture is a 10-40% improvement in operational efficiency within your organization.
In addition to the information presented at the Cloud Economic Summit, Cloudability launched the FinOps Foundation. Comprised of founding members from Atlassian, Nationwide, Spotify, Autodesk, letgo, and many others, the FinOps Foundation is a non-profit trade organization bringing people together to create best practices around cloud spend.
J.R. Storment, Cloudability Co-founder, takes on the role of President of The FinOps Foundation. J.R. describes the need for the organization here.
We are excited to see our partner defining this space and eager to participate in the FinOps Foundation. We are also looking forward to reading “Cloud Financial Management Strategies, Creating a Culture of FinOps,” their O’Reilly Media book which is slated to be published later this year.
Thanks again to Cloudability for hosting us at the event, we are looking forward to an exciting year together.
DevOps methodology requires seeing engineering and IT more holistically. They work together throughout the product lifecycle, with some organizations merging them into a single team.
DevOps culture decreases time to market while increasing reliability, scale, and security through closer collaboration between development (engineering) and operations (IT). It can require a sea change in your company’s culture, but again — the costs of not adopting DevOps can be far greater.
DevOps methodology requires seeing engineering and IT more holistically.
Fostering Communication and Cooperation
Create a unified reporting structure for DevOps teams. Set clear expectations and guidelines, driven by fundamental values.
Build cross-functional teams including both engineers and IT technicians.
Leverage engineers to assist IT technicians in understanding complexities involved in delivering business features.
Leverage IT technicians to help engineers understand how involved 24/7 support of those features is.
Automate repetitive tasks, freeing up engineers and IT technicians to perform more creative, value-adding work while reducing human error.
Make feedback a fundamental feature of workflow to encourage communication-driven action. Create a culture of data sharing.
Driving Improvements through DevOps
While DevOps is generally part of product development, it can also be an invaluable tool during cloud migration. No less an authority than Bina Khimani, Global Head of Partner Ecosystem (Cloud Migrations) at Amazon Web Services, made this case in late 2017. A survey of 450 C-level and VP/director-level executives in the United States, Canada, and the UK found 54 percent already leveraged DevOps methodologies.
This is not an easy direction to move in, even with the best circumstances. It requires unwavering leadership in the truest sense of the word. However, the rewards are wide-ranging, including:
Continuous development with shorter development timetables.
Faster problem resolution.
More productive teams with higher morale and engagement.
More opportunities for professional development.
More time spent creating and innovating, as opposed to fixing and maintaining.
Cloud deployment can be the perfect time to start adopting these changes in your organizational culture. Successful adoption means that not only does everyone win, but everyone will feel like they’ve won as well. That’s a value you just can’t put a price on.
A conscious and concerted effort is required to get everyone on the same page, pulling in the same direction.
Complementary Missions IT and Engineering have different purposes, but their mission statements can and should complement one another, rather than causing them to butt heads. Involve both IT and Engineering team members when crafting mission statements to make sure that one team doesn’t dominate the other. The purpose here is gathering their input and voice to create mutually beneficial missions.
Open Communication You need to encourage open, clear, and direct communication between departments, especially during disruptive periods. There’s nothing wrong with formalizing this diplomatic process. Having regular meetings where the two departments can hash out disagreements and sticking points can be worth its weight in gold, helping to diminish or eliminate tension altogether. Remember the Agile principle that face-to-face communication is the best.
Complementary Needs Emphasize points of agreement. Where they don’t exist, try to find needs and wants that are complementary. When it’s not possible to make everyone win, it might be possible for each department to feel like they’ve won enough.
Cooperative Culture Create a culture where one department sees the victories of another as successes by fostering a workplace where departments see themselves as part of a greater holistic whole rather than competing factions. Encourage self-organization in keeping with Agile principles.
Cloud migration is about more than just “lifting and shifting” applications and data or modernizing applications for the cloud, it’s about transforming the culture of your entire organization.
Cloud migration is about transforming the culture of your entire organization.
How a Cloud Migration Can Inspire a DevOps Culture
You can use your cloud migration as an opportunity to implement Agile development principles. Defusing tension is an important element of a successful cloud migration. Once you have the broader strokes squared away, you can start drilling down into the specifics.
Automation There’s at least one thing both IT and DevOps immediately have in common: they both want to identify and address manual, inefficient, error-prone tasks. Automating these tasks can free up engineering and IT to focus on more creative and value-adding work. Embracing automation is often the way to gain cross-departmental wins that increase cooperation and morale amongst these teams.
Framing How you frame a cloud migration can go a long way toward garnering goodwill from both departments. Cloud migrations can be framed as the inevitable march of progress, something we all have to “deal with,” or they can be framed as a challenge requiring input from both departments. The former is a quick way to create resentment, but the latter is a valuable way to inspire the best in your people, including healthy competition and creative cooperation.
In my next post, I’ll explore the adoption of DevOps methodology, which sees engineering and IT not as opposing factions, but two parts of a greater whole.
But it’s not unusual for the team supporting your digital infrastructure (IT) and your team developing new applications and refining legacy apps (software engineering) to exist in a state of tension at the best of times. Cloud migrations can heighten this tension to the extreme.
The needs and wants of Engineering and IT often come into conflict during a cloud migration. What’s more, the heightened tension can linger around long after the migration is done. That’s not just unpleasant. It can seriously impact your bottom line. So how do you mitigate the tensions between IT and Software Engineering?
Embracing DevOps methodology is a good way to move toward a world where Engineering and IT are seen as two parts of a more cohesive whole. This might require significant change in your organization. But the cost of complacency can be much higher.
Embracing DevOps methodology is a good way to move toward a world where Engineering and IT are seen as two parts of a more cohesive whole.
Understand IT Tension
Common causes of IT tension include:
Conflicting Missions The distinct missions of IT and Engineering can put them instantly into conflict. Engineering is focused on innovating and getting new applications out on time. IT is focused on providing a stable and secure environment for everyone from accounting to the front desk. So, while Engineering is one of many balanced priorities for IT, they believe they should be the top priority. This belief isn’t entirely unjustified. Satisfying clients and developing software are first on the list of Agile Methodology for a reason.
Lack of Communication and Understanding Different missions, scopes, and priorities can make communication difficult even during the best of times. In some cases, there may not even be enough of a shared language for communication. Disputes between IT and DevOps are often communicated and “negotiated” through third parties, adding further opportunity for creating tension. Lack of communication frequently leads to the blame game when things go wrong. This, in turn, deepens mistrust and animosity between the two departments.
Interdepartmental animosity between IT and Engineering doesn’t have to be a fact of life. Management can take steps to move two adversarial departments onto the same page. There might still be rivalries, but that can be healthy. Rivalries that are tempered by mutual respect inspire harder work and greater creativity. Organizations capable of this level of honesty, self-awareness and accountability, will gain a significant competitive advantage over those that are not.
This is the first post in a series of three that discusses the benefits of moving to a DevOps methodology. Next time (Defusing the Tension) we’ll explore some of the ways DevOps can address and defuse tensions within IT departments.