Jump to Content
DevOps & SRE

DevOps Awards winner Uber on building engineering sustainability

July 21, 2023
https://storage.googleapis.com/gweb-cloudblog-publish/images/devops_uber.max-2000x2000.png
Michael Sudakovitch

Staff Security Engineer, Uber

Since it was established in San Francisco in 2009, Uber has been dedicated to connecting the physical and digital worlds. Uber’s app-based offerings connect around 130 million monthly active platform consumers with over 5.6 million monthly active drivers and couriers on Uber and Uber Eats. In this blog post, we’re highlighting Uber for the DevOps achievements that earned them the ‘DevOps communities of practice’ award in the 2022 DevOps Awards. If you want to learn more about the winners and how they used DORA metrics and practices to grow their businesses, start here.

As a worldwide organization operating in over 70 countries and 10,000 cities, we are focused on minimizing our carbon footprint. In 2020, we made a commitment towards a green recovery including a commitment to become a fully zero-emission platform by 2040, with 100% of rides taking place in zero-emission vehicles, on public transit, or with micro mobility. Our company is also committed to implementing best practices for engineering sustainably towards a zero-emission world, and introducing novel, sustainability-oriented products.

This is a huge transformation, especially considering the sustainability metrics of a large organization. Uber needs a significant fleet of hardware to operate their large scale of products and software services, which means that keeping energy consumption low requires optimizations on all levels — from automating sustainability into software and hardware to fostering a culture of sustainability within the workforce.

Objectives

To meet our sustainability needs, we had to couple this transformation with a cultural change within the company. This would include:

  • Identifying areas where we could improve sustainability
  • Determining how to drive adoption of these changes
  • Creating a technical environment that matched our sustainability culture 

Uber-green solutions

To design this community effort, we started by bringing together a small “focus team” of sustainability service and program experts from within the organization. This team’s goal was to share knowledge and tools to the community of developers and engineers across the company, scaling and spreading sustainability best practices. This builds on one of Uber’s core values -  “do the right thing, period.” -  including holding active listening sessions to find ways to update and improve practices and create new sustainability-optimizing tools and services.

Some of the best practices we’ve adopted include:

  • Product ownership: Engineers and developers are responsible and accountable for continuous improvement of their products, rather than just performing maintenance.
  • Sustainable CI: We encourage teams to plan sustainability directly into their continuous improvement lifecycle.
  • Improvements from all levels: We encourage a bottom-up and a top-down approach — including working with leadership to influence guidance and providing sponsorship for sustainable development. 

While continuously building and spreading this culture, we identified Google Cloud as a valuable partner because we each share the same dedication to sustainable engineering. Tools including their Carbon Footprint dashboard allowed us to identify significant opportunities to reduce CO2 emissions. One of the main services — which we internally call the “Google Cloud Project Lifecycle” — monitors activity in all of the organization’s Google Cloud projects and provides optimization recommendations. With the Project Lifecycle, the team discovered that:

  • A percentage of unused resources and Google Cloud projects were not deleted
  • For Google Cloud projects that were deleted, it took teams between six months and a year for this to occur
  • Deletions were long, time-consuming processes, and — in a small number of cases —  projects were manually deleted due to human error and needed to be recreated

Once we had an idea of what needed to change, we decided to create an automated solution that would make adjustments without the slowdowns and potential issues of manual maintenance. We collaborated with Google Cloud teams through in-person and video meetings to determine the best ways to gather feedback from teams, submit feature requests, and fix bugs to drive improvements and innovations. These solutions came together as the Sustainability Suite, which was heavily defined by five essential characteristics of cloud computing:

  • Resource pooling: Uber finds and chronicles unused or underutilized Compute VMs, projects, regions, and more with Cloud Functions that execute Python scripts that query Google Active Assist and then store the information in Firestore.
  • Rapid elasticity: With the scalability to go from 0 to however much compute capacity they need, Uber can perform event-based operations — such as examining large-scale files on arrival — without needing to keep machines running when they’re not needed.
  • Measured service: Perhaps the most important aspect of the Sustainability Suite is the ability to measure activity within a project or resource scope, determine trends — like CO2 output — and automatically optimize processes or issue recommendations to help users drive improvements.
  • On-demand self-service: Uber engineers can re-provision or de-provision resources on the fly, unlocking opportunities for automation to determine whether resources need to be scaled up or down and adjust accordingly.
  • Broad network access: From Google Cloud, teams can address asset provisioning through Infrastructure-as-Code (IaC) with Terraform, as well as control change management, monitoring, and alerting through Jira and ServiceNow ticketing.

Results

With the ability to automatically find inefficiencies and automatically address them, we saw immediate and long-term improvements. These have included:

  • The ability to better identify and eliminate idle and unattended projects, saving an estimated hundreds of thousands of kilograms of CO2 per year
  • A smaller attack surface for Google Cloud projects
  • Significant cost savings
  • Increased customer satisfaction scores for recommendation tickets

Stay tuned for the rest of the series highlighting the DevOps Award Winners and read the 2022 State of DevOps report to dive deeper into the DORA research. Special thanks to Saravanan Raman, Dima Melnyk, Sharon Fang, and other folks from Google Cloud for your partnership and support over the years.

Posted in