Last Friday I found myself in Google's London HQ, talking about cool problems with a bunch of engineers. The so called "onsite interviews".
The saga started a few months ago with two phone interviews.
And here I was, completely unprepared, having the time of my life just chiling in the awesome parlour they have going at the reception desk (inside a very confusing building ... who puts a reception desk on the top floor anyway?)
A disclaimer: some say they had to sign NDA's and stuff. Nobody mentioned to me personally that any of this was a secret. And hey, only ~25% of onsite candidates get hired, there are 30,000 employees - that means 120,000 people have seen what happens.
It's not a secret.
There I was, lounging in a comfy leather chair. Just when I was thinking "Fuck, I blew it. I knew I shouldn't have been 5 minutes late!" my recruiter came in through the door and apologized - her office is across the street nowadays and it takes a while to get to the main building.
She walked me through a series of doors, swiped her keycard a few times, quipped about the epic naming scheme for the interview (meeting?) rooms. Named after cornerstone computers of history, most recently The Watson.
I found myself in a small white room. Nothing more than a desk, a small whiteboard, a phone and a huge LCD screen. Hell, the holding room at the police station I was once taken to as a teen was bigger.
Apparently I drew the short stick and got the smallest whiteboard available as well. Maybe they knew I was short and just wanted to make me comfortable?
A few moments later, my first interviewer came in. Said hello, and went right to business.
There were only three things anyone cared for:
- ability to solve problems you've never heard of
- Big-O and efficiency
- no whiteboard coding, that means catching all off-by-one errors
I especially loved the insistence on solving all problems cold. At one point I said Oh cool, I've heard of this problem before and the engineer immediately swapped it out for a new one.
As a result the whole experience was much more fun - it felt like solving a series of interesting little coding puzzles that are easy enough to be solvable in full and at most optimal within ~30 minutes, but are juuuuust hard enough you actually have to rack your brain a little bit to get them.
Lexical knowledge? Forget about it, whenever you don't know something, they just wave you on and say it's not really important. And you can tell it doesn't matter. They don't even write it down in their notes that hey, there's this little thing you couldn't remember off the top of your head.
My questions were a mix bag of designing systems and algorithms
- there used to be a list of questions here, but I took them out after being informed that they don't actually have hundreds of questions available to ask people
- they were essentially questions similar to those you might experience in a high school (or possibly college) programming competition
Those were the interesting questions anyway, sprinkled between these were explanations of A Recent Interesting Thing You Did (tm) - makes me giddy I gave three different answers to this question. Just to avoid talking about the same stuff all the time :)
Oh and I guess there were some lexical questions, like what is a singleton and how you'd get rid of it, how do closures function and how does a DNS lookup work.
Honestly, I have no idea how I did.
Sure, I solved all the problems. With the exception of one, I even came up with the most optimal solution on my own. And I managed to catch all the off-by-one errors and corner cases and everything.
But it doesn't really matter how well I did, what matters is how many others did better than me in all those little nuances like how quickly it took to solve a problem, how much you communicate and so on ... so it's really hard to say.
What I can say, however, is that it was one of the most fun days I've ever had and I deeply regret the fact there were only five interviews. Everything was over with much too quickly ...
But at the end of the day, I didn't even get the answer to my main question: "What's working at Google like, really?" (seems like they aren't allowed to talk about this, you get canned responses when asking)
So I still don't know if Google is a place I would want to work at, but my god the lunch was amazing. If they extend an offer I might accept for the food alone!
PS: A coffee lab is where Googlers drink their caffeine inside the building
I write articles with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them. Fueled by lessons learned over 20 years of building production code for side-projects, small businesses, and hyper growth startups. Both successful and not.
Subscribe below 👇
Join Swizec's Newsletter and get insightful emails 💌 on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.
"Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"
Senior Mindset Book
Get promoted, earn a bigger salary, work for top companiesLearn more
20% off this week
Have a burning question that you think I can answer? Hit me up on twitter and I'll do my best.
Who am I and who do I help? I'm Swizec Teller and I turn coders into engineers with "Raw and honest from the heart!" writing. No bullshit. Real insights into the career and skills of a modern software engineer.
Want to become a true senior engineer? Take ownership, have autonomy, and be a force multiplier on your team. The Senior Engineer Mindset ebook can help 👉 swizec.com/senior-mindset. These are the shifts in mindset that unlocked my career.
Curious about Serverless and the modern backend? Check out Serverless Handbook, for frontend engineers 👉 ServerlessHandbook.dev
Want to Stop copy pasting D3 examples and create data visualizations of your own? Learn how to build scalable dataviz React components your whole team can understand with React for Data Visualization
Did someone amazing share this letter with you? Wonderful! You can sign up for my weekly letters for software engineers on their path to greatness, here: swizec.com/blog
By the way, just in case no one has told you it yet today: I love and appreciate you for who you are ❤️