<!DOCTYPE html>
<html lang="en">
<head>

<link rel="preconnect" href="https://www.googletagmanager.com">
<script >(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-W8MVQXG');</script>

<meta charset="utf-8">
<meta name="description" content="Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="theme-color" content="#00add8">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Google+Sans:400,500,600|Work+Sans:400,500,600|Roboto:400,500,700|Open+Sans:Source+Code+Pro|Material+Icons">
<link rel="stylesheet" href="/css/styles.css">

  <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-W8MVQXG');</script>

<script src="/js/site.js"></script>
<title>Using Go at Google - go.dev</title>
</head>
<body class="Site">

<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W8MVQXG"
  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>

<header class="Site-header js-siteHeader">
  <div class="Banner">
    <div class="Banner-inner">
      <div class="Banner-message">Black Lives Matter</div>
      <a class="Banner-action"
         href="https://support.eji.org/give/153413/#!/donation/checkout"
         target="_blank"
         rel="noopener">
         Support the Equal Justice Initiative
      </a>
    </div>
  </div>
  <div class="Header Header--dark">
    <nav class="Header-nav">
      <a href="https://go.dev/">
        <img
          class="js-headerLogo Header-logo"
          src="/images/go-logo-white.svg"
          alt="Go">
      </a>
      <div class="Header-rightContent">
        <ul class="Header-menu">
          <li class="Header-menuItem ">
            <a href="/solutions/">Why Go</a>
          </li>
          <li class="Header-menuItem ">
            <a href="/learn/">Getting Started</a>
          </li>
          <li class="Header-menuItem ">
            <a href="https://pkg.go.dev">Discover Packages</a>
          </li>
          <li class="Header-menuItem ">
            <a href="/about">About</a>
          </li>
        </ul>
        <button class="Header-navOpen js-headerMenuButton Header-navOpen--white" aria-label="Open navigation.">
        </button>
      </div>
    </nav>

  </div>
</header>
<aside class="NavigationDrawer js-header">
  <nav class="NavigationDrawer-nav">
    <div class="NavigationDrawer-header">
      <a href="https://go.dev/">
        <img class="NavigationDrawer-logo" src="/images/go-logo-blue.svg" alt="Go.">
      </a>
    </div>
    <ul class="NavigationDrawer-list">
        <li class="NavigationDrawer-listItem  NavigationDrawer-listItem--active">
          <a href="/solutions/">Why Go</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="/learn/">Getting Started</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="https://pkg.go.dev">Discover Packages</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="/about">About</a>
        </li>
    </ul>
  </nav>
</aside>
<div class="NavigationDrawer-scrim js-scrim" role="presentation"></div>
<main class="SiteContent SiteContent--default">
<div>
  <div class="WhoUsesSubPage-hero--caseStudy">
    <div class="WhoUsesSubPage-heroInner--caseStudy">
      <div class="WhoUsesSubPage-heroContent--caseStudy">
        <div class="WhoUsesSubPage-heroText--caseStudy">

  <div class="BreadcrumbNav">
    <ol class="BreadcrumbNav-inner">












      <li class="BreadcrumbNav-li ">
        <a class="BreadcrumbNav-link" href="/solutions/">

            Why Go

        </a>
      </li>





      <li class="BreadcrumbNav-li active">
        <a class="BreadcrumbNav-link" href="/solutions/google/">

            Google

        </a>
      </li>


    </ol>

  </div>
          <h1>Using Go at Google</h1>


            <div class="Article-date">27 August 2020</div>

        </div>

            <div class="WhoUsesSubPage-heroImg">
              <img src="/images/go_core_data_case_study.png" alt="Google">
            </div>

        </div>
      </div>

  </div>
  <article class="Article Article--solutions">

      <div class="CaseStudy-content">
        <div class="CaseStudy-contentBody">


<div class="PullQuote">
  <div class="PullQuote-quoteHeader">
    <img class="PullQuote-image" src="/images/quote.svg" alt="Quotation mark.">
  </div>
  <p class="PullQuote-body">
    <p>Go started in September 2007 when Robert Griesemer, Ken Thompson, and I began
discussing a new language to address the engineering challenges we and our
colleagues at Google were facing in our daily work.</p>

<p>When we first released Go to the public in November 2009, we didn’t know if the
language would be widely adopted or if it might influence future languages.
Looking back from 2020, Go has succeeded in both ways: it is widely used both
inside and outside Google, and its approaches to network concurrency and
software engineering have had a noticeable effect on other languages and their
tools.</p>

<p>Go has turned out to have a much broader reach than we had ever expected. Its
growth in the industry has been phenomenal, and it has powered many projects at
Google.</p>

  </p>
  <div class="PullQuote-author">
    <span>
      &mdash; Rob Pike</span>
    </div>
  </div>

<p>The following stories are a small sample of the many ways that Go is used at Google.</p>

<h3 id="how-googles-core-data-solutions-team-uses-go">How Google&rsquo;s Core Data Solutions Team Uses Go</h3>

<p>Google&rsquo;s mission is “to organize the world&rsquo;s information and make it universally
accessible and useful.”  One of the teams responsible for organizing that
information is Google’s Core Data Solutions team. The team, among other things,
maintains services to index web pages across the globe. These web indexing
services help support products like Google Search by keeping search results
updated and comprehensive, and they’re written in Go.</p>

<p><a href="/solutions/google/coredata/">Learn more</a></p>

<hr />

<h3 id="chrome-content-optimization-service-runs-on-go">Chrome Content Optimization Service Runs on Go</h3>

<p>When the product Chrome comes to mind, you probably think solely of the user-installed browser. But behind the scenes, Chrome has an extensive fleet of backends. Among these is the Chrome Optimization Guide service. This service forms an important basis for Chrome’s user experience strategy, operating in the critical path for users, and is implemented in Go.</p>

<p><a href="/solutions/google/chrome/">Learn more</a></p>

<hr />

<h3 id="how-the-firebase-hosting-team-scaled-with-go">How the Firebase Hosting Team Scaled With Go</h3>

<p>The Firebase Hosting team provides static web hosting services for Google Cloud customers. They provide a static web host that sits behind a global content delivery network, and offer users tools that are easy to use. The team also develops features that range from uploading site files to registering domains to tracking usage.</p>

<p><a href="/solutions/google/firebase/">Learn more</a></p>

<hr />

<h3 id="actuating-google-production-how-googles-site-reliability-engineering-team-uses-go">Actuating Google Production: How Google’s Site Reliability Engineering Team Uses Go</h3>

<p>Google runs a small number of very large services. Those services are powered by a global infrastructure covering everything one needs: storage systems, load balancers, network, logging, monitoring, and many more. Nevertheless, it is not a static system - it cannot be. Architecture evolves, new products and ideas are created, new versions must be rolled out, configs pushed, database schema updated, and more. We end up deploying changes to our systems dozens of times per second.</p>

<p><a href="/solutions/google/sitereliability/">Learn more</a></p>

        </div>
        <div class="CaseStudy-contentAside">
          <div class="CaseStudy-aboutBlock">

            <img src="/images/logos/google.svg" class="CaseStudy-aboutBlockImg" alt="Google">
            <h3 class="CaseStudy-aboutBlockTitle">
              About Google
            </h3>

              <p class="CaseStudy-aboutBlockBody"><p>Google is a technology company whose mission is to organize the world’s
information and make it universally accessible and useful.</p>

<p>Go was created at Google in 2007 to improve programming productivity in an
era of multi-core networked machines and large codebases. Today, over 10
years since its public announcement in 2009, Go&rsquo;s use inside Google has grown
tremendously.</p>
</p>

          </div>
        </div>
      </div>

  </article>
</div>
</main>
<footer class="Site-footer">
  <div class="Footer">
    <div class="Container">
      <div class="Footer-links">
          <div class="Footer-linkColumn">

<a href="/solutions/" class="Footer-link Footer-link--primary">
  Why Go
</a>


<a href="/solutions/#use-cases" class="Footer-link">
  Use Cases
</a>



<a href="/solutions/#case-studies" class="Footer-link">
  Case Studies
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="/learn/" class="Footer-link Footer-link--primary">
  Getting Started
</a>


<a href="https://play.golang.org" class="Footer-link">
  Playground
</a>



<a href="https://tour.golang.org" class="Footer-link">
  Tour
</a>



<a href="https://stackoverflow.com/questions/tagged/go?tab=Newest" class="Footer-link">
  Stack Overflow
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="https://pkg.go.dev" class="Footer-link Footer-link--primary">
  Discover Packages
</a>

          </div>
          <div class="Footer-linkColumn">

<a href="/about" class="Footer-link Footer-link--primary">
  About
</a>


<a href="https://golang.org/dl/" class="Footer-link">
  Download
</a>



<a href="https://blog.golang.org" class="Footer-link">
  Blog
</a>



<a href="https://github.com/golang/go/issues" class="Footer-link">
  Issue Tracker
</a>



<a href="https://golang.org/doc/devel/release.html" class="Footer-link">
  Release Notes
</a>



<a href="https://blog.golang.org/go-brand" class="Footer-link">
  Brand Guidelines
</a>



<a href="https://golang.org/conduct" class="Footer-link">
  Code of Conduct
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="https://www.twitter.com/golang" class="Footer-link Footer-link--primary">
  Connect
</a>


<a href="https://www.twitter.com/golang" class="Footer-link">
  Twitter
</a>



<a href="https://github.com/golang" class="Footer-link">
  GitHub
</a>



<a href="https://invite.slack.golangbridge.org/" class="Footer-link">
  Slack
</a>



<a href="https://reddit.com/r/golang" class="Footer-link">
  r/golang
</a>



<a href="https://www.meetup.com/pro/go" class="Footer-link">
  Meetup
</a>



<a href="https://golangweekly.com/" class="Footer-link">
  Golang Weekly
</a>


          </div>
      </div>
    </div>
  </div>
  <div class="Footer">
    <div class="Container Container--fullBleed">
      <div class="Footer-bottom">
        <img class="Footer-gopher" src="/images/gophers/pilot-bust.svg" alt="The Go Gopher">
        <ul class="Footer-listRow">
          <li class="Footer-listItem">
            <a href="/copyright">Copyright</a>
          </li>
          <li class="Footer-listItem">
            <a href="/tos">Terms of Service</a>
          </li>
          <li class="Footer-listItem">
            <a href="http://www.google.com/intl/en/policies/privacy/"
              target="_blank"
              rel="noopener">
              Privacy Policy
            </a>
            </li>
          <li class="Footer-listItem">
            <a
              href="https://golang.org/s/discovery-feedback"
              target="_blank"
              rel="noopener"
              >
              Report an Issue
            </a>
          </li>
          <li class="Footer-listItem">
            <a
              href="https://golang.org"
              target="_blank"
              rel="noopener"
              >golang.org
            </a>
          </li>
        </ul>
        <a class="Footer-googleLogo" target="_blank" href="https://google.com" rel="noopener">
          <img class="Footer-googleLogoImg" src="/images/google-white.png" alt="Google logo">
        </a>
      </div>
    </div>
  </div>
  <script src="/js/carousels.js"></script>
  <script src="/js/searchBox.js"></script>
  <script src="/js/misc.js"></script>
  <script src="/js/hats.js"></script>
</footer>
</body>
</html>
