Source: Beyond the Map: A Q&A with engineering director Andrew Lookingbill from Google Cloud
Last month we kicked off “Beyond the Map”, a series of blog posts giving you a closer look at how we build maps that keep up with the changing world and that power apps, experiences, and businesses around the globe. In our first post, you heard about the key areas of our mapmaking processes–imagery, authoritative third-party data, community contributions, and machine learning.
In our next installment we’ll dive deeper into how we use imagery to map the world and what that means for our customers. But before we do that, we sat down with the co-author of the first post, engineering director Andrew Lookingbill, to learn more about his passion for mapmaking, biggest technical challenge at Google, and advice he has for developers working on all kinds of problems.
Of all the companies to work for, why did you choose Google and why have you stayed at Google for more than a decade?
My coworkers and I who joined the Google Street View team came to Google because of the scope of the team’s ambitions. It’s easy, now that Street View has been around for a while, to forget how cheerfully mind-blowing the charter was. Sure, let’s take pictures–of everything–and make it possible to visit anywhere on the planet. There was something very attractive about that mindset.
What exactly do you and your team do at Google?
Today my team and I focus on the algorithms, infrastructure, and tools we use to create and maintain our model of the real world. This includes all the imagery and 3D models, as well as all of the semantic data like addresses, business information, roads, natural features, buildings, etc. It’s an awesome job both because of the breadth of technical work–everything from building hardware for cars, to working on ML algorithms that can help make our maps better just by looking at pictures–and the breadth of use cases of the data.
Not only have you been at Google for more than a decade, but you’ve been on the Geo team for all that time. Haven’t you gotten bored of mapping the world yet?
Google has a wonderful culture of internal mobility, and the fact that I’ve stayed very close to the same team I joined on my first day makes me a bit unusual. Two things have kept me here. The first, unsurprisingly, is the group of people I work with. I’ve never met a more impressive and humble group. The second is the size of the challenge we work on and the impact we can have. The world’s a big place, and it’s changing constantly. Mapping it is a task that’s never “done” and as new use cases for the data keep being imagined by developers inside and outside of Google, it just keeps getting more interesting.
What’s the biggest technical challenge you’ve faced at Google?
When we first launched a country’s worth of Google-created and curated map data, the set of technical challenges involved in swapping out map data across all of our systems Google-wide, was probably the hardest, most ill-specified problem I’d ever worked on in my career up until that point. Though it’s a class of problem I’ve gotten to work on several times since. When you swap out the set of data that systems were built on and optimized for, you find all sorts of situations where the code was overfit for the existing data, and subtle differences crop up in downstream systems. For example, if you launch much more detailed geometry for water bodies, various assumptions about the memory required will break, etc. Similarly, swapping all the data out at once, in our live services, so users aren’t impacted by strangeness caused by one service (say routing) using different data than another (say search) without anyone noticing was so closely akin to pulling the tablecloth off a fully set table that we had to stop using that analogy.
How about the most unusual, unexpected, or funny challenge?
One of the things I love about my career is that when you do new things, you get new challenges. Early in the Street View project, we were covering the cameras at night to protect them from dew, etc. Turns out a low-tech solution worked wonderfully–socks! The only problem was that every once in a while, someone would forget to take the sock off before they started driving. In the end, the team implemented a “sock detector” image processing algorithm that would quickly give the driver a warning if it thought the driver was driving with the sock still in place. Street View cars today are far more sophisticated, and no socks are required, so the sock detector is no more.
What do you think the role of machine learning is in mapping the world?
The role of machine learning in mapping is one of scale. Street View, processed and aligned aerial imagery, and satellite imagery are incredible because they allow a type of telepresence. You can glean information about a place in the world without actually physically being there, often enough to build a useful map. Machine learning has started to allow us to generate these insights without needing to, for instance, examine each Street View panorama for new business addresses. This in turn allows us to make useful maps for a much larger portion of the world’s population than would have been possible otherwise.
Have you ever driven a Street View car? What was it like?
I did get a few opportunities to drive cars in the first fleet as we were building them. Even if we were just driving between buildings, it always attracted some attention, since cars with cameras strapped to the roof were a lot less common than they are today, even in Mountain View. I’ve definitely had a soft spot for Chevy Cobalts ever since. Funnily enough, part of our process for building out the cars involved removing the passenger seat to accommodate some hardware, so the extra seats tended to become de facto furniture in the building. Quite comfortable.
Back when Google launched Maps and Street View, it seemed like an audacious task. What advice do you have for engineers working on big ideas like these?
Keep your eye on the forest and the trees. Breaking down an audacious goal into the component pieces that have to be built, and identifying metrics and tests to make sure you’re headed in the right direction are important. But periodically you need to reexamine the big picture, make sure you’re still on-track to hit your big goal, and that there aren’t other ways to get where you need to go.
Google Maps Platform has a wide spectrum of customers–from hobbyists to nonprofits to start-ups to Fortune 500 companies. And they’re all using our products in very different ways. What’s one tip you think can help any type of developer, working on any type of business or project?
Talk to everyone. The teams I get to work with are inventive and happy to brainstorm about possible approaches. Especially early in your career, it can be daunting to come up against a problem it may take you days or weeks to even understand. Utilizing conversations with others to help make sense of it all and pressure-test ideas is one of the best things you can do to move past seemingly insurmountable obstacles.
What’s the one thing about our maps data that you don’t think people know or think about?
That the map is, in many ways, a living thing–not a static description of the world. Things change all the time. Neighborhoods are built, businesses change, and so on. That vibrancy means that our users are a huge part of keeping the map fresh and useful for themselves. Local Guides and any user who knows something about the world that we’re missing or have wrong, can report the problem and help themselves and others have a better experience using the product. These community contributions are reflected in our consumer product and also shared with Google Maps Platform customers. So both consumers and customers are getting the most up to date information about the world that we can offer.
What do you hope to accomplish next at Google?
Keep mapping the world. As it moves faster, so will we.
For more information on Google Maps Platform, visit our website.