Tools for Continuous Integration at Google Scale

  • June 19, 2012 · 5:30 PM
  • Google NYC (8th Ave Entrance)

Continuous integration systems play a crucial role in modern software development practices, keeping software working while it is being developed. The basic steps most continuous integration systems follow are:

1. Get the latest copy of the code.
2. Build the system
3. Run all tests.
4. Report results.
5. Repeat 1-4.

This works great while the codebase is small, code flux is reasonable and tests are fast. As a codebase grows over time, the effectiveness of such a system decreases. As more code is added, each clean run takes much longer and more changes gets crammed into a single run. If something breaks, finding and backing out the bad change is a tedious and error prone task for development teams.

At Google, due to the rate of code in flux and increasing number of automated tests, this approach does not scale. Each product is developed and released from ‘head’ relying on automated tests verifying the product behavior. Release frequency varies from multiple times per day to once every few weeks, depending on the product team.

With such a huge, fast-moving codebase, it is possible for teams to get stuck spending a lot of time just keeping their build ‘green’ by analyzing hundreds if not thousands of changes that were incorporated into the latest test run to determine which one broke the build. A continuous integration system should help by providing the exact change at which a test started failing, instead of a range of suspect changes or doing a lengthy binary-search for the offending change. To find the exact change that broke a test, the system could run every test at every change, but that would be very expensive.

To solve this problem, Google built a continuous integration system that uses fine-grained dependency analysis to determine all the tests a change transitively affects and then runs only those tests for every change.

John Micco, a member of the Engineering Tools group at Google, will describe the continuous integration system built to help manage testing automation at Google.

----------

The agenda for this event is:

5:30 - 6:30 pm: Attendees Register / Networking
6:30 - 6:35 pm: Welcome & Intro
6:35 - 7:35 pm: Presentation
7:35 - 8:00 pm: Q/A

Please note the change in venue to the 8th Avenue side of the building. If you mistakenly go to the 9th avenue entrance, building security will ask you to walk around the building (on the outside!) to the 8th Avenue side. The A,C,E trains stop on the 8th Avenue side of the building.

The RSVP name will be provided to the building security in advance - so please do register with your real name as this will significantly speed up registration. To allow all participants in the community to get clear visibility into their schedules, for all upcoming talks, we will make seating reservable a week prior to the event.

Google volunteers will also be present at the event to answer any questions you may have, look for people who are wearing "Google Wear".

See you there!

Join or login to comment.

  • David S.

    Just one suggestion to the process guys, some one should post the link to the google tech talk once the video is posted to youtube. I know it's easy enough to search over there but after the talk it would be more convenient (by a few seconds) to have the link to the video available in the associated talk page. Thanks!

    1 · July 8, 2012

  • Lehns J.

    It was great and I learned a lot that will help my in my studies.

    June 21, 2012

  • A former member
    A former member

    The Google people from the host, presenter to everyone wearing Google shirts made the event a stimulating and welcoming one.

    June 21, 2012

  • Yeukhon W.

    @Mayank Google always records its tech talks. You can check youtube channel: http://www.youtube.com/playlist?list=PLAD8A7B6D66DDD297 It will take a while....... that's NY tech talk playlist.

    June 20, 2012

  • A former member
    A former member

    A great talk, and great hospitality, both as usual for Google NYC!

    June 20, 2012

  • Jon H

    Great talk! Thanks very much to John Micco and Google for sharing.

    June 20, 2012

  • David S.

    Always a great experience and a very informative talk.

    June 20, 2012

  • Jose Muanis C.

    Great talk. I do have to say that for the 3rd time (on this testing@google series) they talk about what I believe is their crown jewels on testing. The dependency inference tool/graph which helps them determine which tests to run. This tools seems to me so amazing that it should have it's own talk. But yet again, I leave the talk with that feeling "oh yeah, they just mentioned it again".

    June 20, 2012

  • Mayank J.

    Do we have any video on this. I missed it unfortunately.

    June 20, 2012

  • A former member
    A former member

    The best talk I've been to so far: great presenter on a topic I know fairly well so I didn't miss much. A bit awe inspiring how complex Google's system is.

    June 20, 2012

  • Mert H.

    Excellent Speaker, very knowledgeable about the talk and made it very interesting. Very good material that I have not been exposed to before.

    June 20, 2012

  • Ken G.

    It was well worth the visit to see how Google is using CI. I was a bit uninspired to discover their methods are behind the curve in comparison to tools like Jenkins. All of the desired hooks and methods that are on the discussed wish list already exist as plugins for Jenkins and are currently in use in my setup at work. I've not used Jenkins to the scale required by Google, but neither have they so who knows what would happen.

    June 20, 2012

  • Federico U.

    Interesting talk.

    June 20, 2012

  • Adam G.

    How do you solve CI at massive scale??? Throw more hardware at it...until you can't throw any more (which is very soon)...#googlefail

    June 20, 2012

  • Matthew D.

    Was Great and Informative

    June 19, 2012

  • Yeukhon W.

    Excellent. I love it. Hahaha. I actually went up and asked my questions. The venure is perfect!! Way better than the one on the 10th floor?

    June 19, 2012

  • William P.

    Great talk, the speaker was knowledgeable and his enthusiasm was contagious. I would have happily listened for longer to get more detail.

    June 19, 2012

  • Ken G.

    Excited to be attending now, and it's just a few blocks away! ;)

    June 19, 2012

  • Adam G.

    Thanks Yeukhon, but I was referring to *during* the event. I appreciate the response, though.

    June 14, 2012

  • Yeukhon W.

    I believe all Google Tech talks are recorded and on Youtube you can click on `CC` to views the dialogue caption if that's what you are after. I haven't checked out all of them, but a few of them seem to have that, so I guess that's a yes...?

    June 14, 2012

  • Adam G.

    Any chance the talk will be captioned?

    June 13, 2012

  • Andrew S.

    There is garage parking in the building and around 5:30 you may have luck with street parking. A/C/E/L trains run right to 111 8th avenue, and it's a couple block walk to NJ Transit and other trains.

    June 13, 2012

  • Victor A.

    Look forward to catching up with everyone!

    June 13, 2012

  • A former member
    A former member

    What a great way to spend my birthday.

    1 · June 12, 2012

  • sravanthi k.

    Can I still RSVP for the event?

    June 6, 2012

People in this
Meetup are also in:

Create your own Meetup Group

Get started Learn more
Bill

I started the group because there wasn't any other type of group like this. I've met some great folks in the group who have become close friends and have also met some amazing business owners.

Bill, started New York City Gay Craft Beer Lovers

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy