Every day, Ben McMahan’s work appears on the Google homepage, but he still jokes about dropping out of the Ph.D. program at Rice University. McMahan runs the engineering team behind Google Doodles, the spontaneous changes that are made to the Google logo to celebrate important people, places, and things that have impacted culture.
“I dropped out of the Ph.D. program after completing my master’s because I really only wanted to work on games. The games were fun and I enjoyed my work. But a lot of my friends from grad school had gone to work for Google and I kept getting these calls.”
“At my wife’s *gentle* urging, I finally agreed to apply. I passed all the interviews and received an offer for two or three times the amount I’d been making. But I still had doubts. How could I enjoy doing anything but games? I took the leap, and it turns out what I really like to do is problem solve.”
McMahan had to adapt to a different employee culture. He originally went to graduate school with the idea of becoming a professor, and hadn’t really considered industry until he got a job at a local computer-game company.
“It wasn’t until I left grad school that I realized how much I enjoy working – I know that sounds weird. I was getting paid pretty miserably, but it was exhilarating to be contributing to a shared goal, making something, and getting it out there. I was already on a leave of absence from Rice at that point, so I dropped out and found a job doing mobile games,” he said.
“Except for a few companies like Blizzard, the game industry has a reputation for exploiting their employees’ passion for making and improving games. At Google, they see their employees as assets. We are treated very well here.”
McMahan joined the Google team in September 2007 working on Knol, a collaborative documentation writing tool. Then he switched to focus on Google Instant Search in 2009. Although the feature was dropped in 2017, McMahan is still proud of the work.
“Instant Search displayed results while you typed. That was a really good team, but the product was also a technologically sexy thing to work on. The launch was huge and I learned a lot about product development,” said McMahan.
“We learned our customers were annoyed by flashing things; it had to be just distracting enough to be useful. In one case, we debated two different options that seemed equal to us for two weeks. Within seconds of an actual user test, it was humblingly apparent which one was best.”
McMahan has worked on Google’s iOS and Windows 8 search apps as well as the search functionality for Google Glass. He also worked on a team that produced YouTube Kids. Eight years after leaving the computer-game industry, he was invited to re-use his expertise inside a different Google team.
“The Doodle team creates the illustrations, animations, and sometimes games (like Pac-Man) that replace the Google logo and aim to inspire and delight users. Examples of Doodles I’ve worked on are Halloween 2016, 44th Anniversary of the Birth of Hip Hop, and the 50th Anniversary of Children’s Programming. If it’s an interactive experience, an engineer probably worked on it.
“But the challenge comes in rolling it out to 50 different platforms, in different sizes, launches, languages, time zones. So not only do we help create the games, we’re also behind the content management tools that help us launch hundreds of Doodles around the world every year.”
When asked how Doodle’s work, he said, “You’d be surprised how much planning goes into it. We launch over 400 Doodles a year, so we have to plan way before each calendar year. Beyond the core Doodle team, we also have Googlers from all over the world helping suggest awesome people and topics for their countries. It’s an interesting constraint satisfaction problem. When we’re deciding what makes the final calendar, we look at things like what artists and engineers we have available throughout the year, what’s most important to local cultures, what’s best from a diversity and inclusion standpoint, etc.
McMahan has always worked on the creative side of engineering. “I learned at work that other people don’t necessarily see how engineering and creativity go hand in hand. Tasks that were trivial for me were harder for other software engineers, but I have my own challenges in areas where they excel.”
Management is one area in which he did not expect to excel. He said, “Around here no one wants to be a manager; it is often thrust upon you. I was running the Windows search app as a tech lead, and the team was reporting to my manager. At one point, he said it made a lot more sense to have those three or four people reporting directly to me. So I became a manager.”
His experience working on and leading teams has shaped his advice for current CS students. McMahan said communication skills are critical, particularly when software developers need to be understood by colleagues who are not engineers.
“Realize that no matter what, you are going to work as a team. If you don’t have strong communications skills and work well with a team, you will plateau in your career,” he said. “Yes, you have to know engineering to get the job and you have to pass a whiteboard interview. You might get the entry-level job and do fine, but there is definitely a glass ceiling for engineers who don’t communicate well. I’d suggest taking English classes that require you to write.”
He encourages software engineers to recognize their own boundaries of expertise. “Don’t assume you are the only one who knows how things work, especially outside your project. If a marketing person says something is bad for PR, engineers may have a tendency to dismiss that even though it is outside their own area of expertise. Be aware of how you are working within and across teams, especially if you are told you aren’t being humble.”
McMahan has over 10 years of experience interviewing candidates for a wide variety of roles. At Google, the emphasis is on hiring generalists, and he offers two tips for applicants.
“We seem to pick a pool of people who could potentially work on any team. To be successful in any interview, ask questions. Of course you need to study up first and practice solving technical challenges. But you are going to talk to some amazing people in your interviews. Be interested in them, show passion or curiosity in what they do, but don’t derail the interview.
“The second tip is giving yourself time to think. People panic and feel the time pressure, so they jump at the first solution they think of. But give yourself time to exploring an idea. If you get stuck, step back and start a different tack.”