Home > Uncategorized > Goodbye to Google+

Goodbye to Google+


Google+ is officially shutting down for consumers on 4/2/2019 and I have surprising feelings about it as a product and a codebase, having worked to re-write it in my time as an engineer at Google in 2014.

Screenshot 2019-03-11 14.45.21

“Looks like you’ve reached the end” – Indeed we have, G+

I’d never been an active G+ user and found the Circles concept confusing/clunky and the feature set too large.  I’ve always viewed Twitter as the ideal, time-based news feed.  When Polar as acquired by Google and we joined G+, we began an exciting project to overhaul G+ with product focus and a delightful newsfeed experience, mobile first.

Internally, we re-wrote a Java monolith using a new isomorphic (client/server-side) web component framework and micro-services.  We designed and built mobile-first creating fast, responsive experiences that worked on both small phones and desktop displays.  We built on the success of Google Photos to embed, analyze, and render content in the news feed beautifully.

Re-writing an application from scratch is generally not the right solution to your problems and often fraught with peril.  Our thesis was to make a faster, mobile first implementation using a new internal framework and simplify the product by cutting features.  Both of these were essential pre-requisites to executing a successful re-write.  We also had the infrastructure to build/validate our prototype and then migrate the application URL path-by-path from the legacy monolith into the new system. We let early-adopters beta test the new system.  This was a technical success, though not without toil and setbacks.

I’ll never forget the full, public launch in the small hours of the night when we ramped production traffic to 100% from the legacy to new version of G+ – only to have our backends overloaded and latency spike.  After 24 hours of urgent debugging, we found a browser toolbar sending high volumes of traffic from all over the world to load a formerly minimal page – just to scrape the unread post count for a user. In the re-write, this page contained an expensive fully rendered news-feed.  With the query cost for that page grown dramatically, the traffic overloaded our newsfeed backends.  We blocked the traffic and re-launched successfully.

Another time, we experienced a production outage when users were served up a blank, white page.  The feature flag/experiment system had a bug resulting in users being shown the HTML markup for one variant and the CSS for another – causing no visible content on the page.  Yet everything was working as far as our automation was concerned and it took manual bug reports to realize what had happened.

I will always remember the teams building G+ and the expertise, idealism, and excitement of the staff in the Social product area fondly.

I won’t miss Google+ in my life, but I am proud of what we built and how we built it.

Categories: Uncategorized
%d bloggers like this: