Browsers, ping pong, and datacenters.
2008 - 2012
I joined Google back in January of 2008, and had the pleasure to spend the next 4+ years working alongside some amazingly talented people. I was fortunate enough to cap off my career at Google wearing the Technical Lead and Senior Software Engineer hats (I of course stole those hats and hid them in my closet).
I started off at Google, working on the
Google Web Toolkit (GWT) project, where I designed parts of the core libraries and eventing system, built visualizations of GWT’s lightweight metrics infrastructure, and contributed a cross platform HTML5 canvas library (
GWTCanvas).
I moved on to develop
Speed Tracer (which launched at
Google Campfire One 2009) alongside a small team of engineers. I implemented most of Speed Tracer’s UI and visualizations, which was especially rewarding since Vic Gundotra used a very early pre-launch version of it as a demonstration of the potential of HTML5 in the
2009 Google I/O keynote. Later, I got to represent Google at the
2010 Velocity Conference where I gave a short presentation on Speed Tracer’s feature set.
While working on Speed Tracer, I worked closely with other teams inside Google to make their applications faster. We helped speed up Google Maps, Wave, and Google AdWords among others. I won an OC Award (which is the highest award for innovation at Google) for my work on AdWords.
Developing Speed Tracer meant developing new infrastructure inside the
Webkit rendering engine and
Chrome. Some of these contributions underpin infrastructure that now drives the current WebKit Developer Tools timeline panel, and the Chrome extensions debugger API. I also implemented
V8’s (the JavaScript engine powering Chrome) C++ API for grabbing JavaScript stack traces in an embedded context, without the need to run JavaScript.
After Speed Tracer I moved on to lead a team of 20 engineers building a large-scale distributed system with a state-of-the-art, performant web client, for an internal project that I can’t talk about. I scaled backend systems and built various client/server frameworks and libraries. I also designed UI widget systems, browser client architectures, and coordinated engineering efforts across 3 separate Google sites. Being a Tech Lead was fun. Although I admit I had it easy given how incredibly talented the engineers around me were. They really didn’t need much leading.
Oh and I got to contribute to some other
open source projects :).