Let me tell you a story. John Washam, an economics grad, decided to become a programmer after serving in the American military in South Korea. He learned coding to supplement his income as an English teacher to Korean schoolchildren after his discharge from the military. He learned website design, moved back home, started 3 small businesses in 15 years and had a son. Life was good. However, something was nagging at the back of his mind. Despite his success and reputation as a capable website designer/entrepreneur, he felt he wasn’t getting to work on the cutting edge of tech. That dissatisfaction led him to look for a job at Google. Being an ex-army man he did his reconnaissance by reading “How Google Works” by Eric Schmidt & Jonathan Rosenberg. Like any techie, John knew Google is an unbeatable experience when it comes to job satisfaction and working on the coolest technologies in the world. Now as we’ve established, John was an economics grad. He didn’t have the first requisite for most software jobs - a computer science degree. John wasn’t most men and Google isn’t most companies so he knew that as long as he had the computer science skills Google wants, there is nothing that can stop him. Then, a friend happened to give him some Google interview coaching notes. That was enough to get John started on charting a path into the heart of Google. Based on the coaching notes, advice and info gleaned from Google execs, YouTube videos, books and webpages, he created a study plan that would take him 8 months to complete. He studied full time and got an interview. Soon I’ll show you his study plan and notes so you can follow the path that John created. But before that some basic facts.
John Washam with his books
A Google interview can have up to 5 rounds depending on the position you’re applying for. After your application has gone through the screening process you are invited to one of their offices for the on-site interviews. These interviews are chiefly divided into 3 parts:
Telephonic interview
Coding interview
Cultural fit/Behavioral interview
The telephonic interview is a brief chat over the phone to explore your interests and skills. In addition to that, they go over some algorithmic problems. These are the problems that you’ve heard about - the dreaded puzzles “only geniuses can solve”. A vast majority of these problems test your algorithmic thinking and nothing else. Do you need to be extremely clever and impossibly mathematical to solve them? No. It takes a little bit of practice and an awareness of problem classes. In the words of Steve Yegge, author of ‘Get That Job At Google’, “Your best bet, interview-prep wise, is to practice the art of recognizing that certain problem classes are best solved with certain algorithms and data structures.Those so called “puzzles” are algorithmic data structure word problems. Check out the famous two egg problem - an often asked problem in Google interviews. What we can take home from that is don’t blindly spend your time studying “puzzles”. To repeat, these are not “puzzle” questions or wildcard question, these are algorithmic thinking tests.
Photo by Clem Onojeghuo on Unsplash
The coding interview can have 1-3 parts depending upon the role and the seniority of it. An average coding interview nowadays usually has 2 parts. One is a test of your coding skills and the other is a test of your systems design skills. At Google, you’re expected to deliver high-quality business ready code. Just being good at a language wouldn’t do. You’d also need to create user-friendly experiences that help people in their real lives. You might be asked to design Facebook, design Twitter or design LinkedIn etc under given constraints. Important note - learn to code without IDEs. Google interviews will have you doing whiteboard coding.
Time to remember John Washam again. He was already a pretty good programmer. Then what did he study for 8 months? He studied computer science. What’s the difference? Computer Science supplements a coder’s know-how with data structures and algorithms, compiled languages, memory, and absorption of the impact of coding and architecture decisions on the hardware.
What I’m saying is, instead of solving interview questions, focus on becoming a better computer scientist. Google is not some Greek Oracle that will only open its doors to those that can solve its mysteries. It’s an internet company that wants to hire brilliant computer scientists with in-depth knowledge of how things work under the hood and the execution ability to deliver clean, usable and user friendly code.
There are many online resources to help you with interview prep, some paid and some unpaid like LeetCode, GeekForGeeks and Google TechDev Guide but my favorite by far is John Washam’s Coding Interview University on GitHub. This course is a comprehensive guide of everything you will remotely need to crack a Google engineering interview.
Photo by Ilya Pavlov on Unsplash
Cultural fit is quite important to Google and pretty much any company of note. The last round of interviews tries to determine exactly that. It has been seen that conscientious, bright, extroverted(not always) and humble personalities tend to do better in Google interviews.
Remember John Washam? After 8 months of studying computer science and coding full time for 8 months on top of his existing coding skills....he didn’t make it. Google rejected him.
Photo by Samuel Holt on Unsplash
Google follows the recruitment philosophy of “it’s better to reject a good candidate than to hire a bad candidate”. So sometimes, highly skilled candidates would be left out. I’d like to emphasize that, “bad” doesn’t mean unskilled or incompetent, necessarily. It might just mean a bad culture fit.
If you’re rejected despite good prep, it doesn’t mean you’re not good, it means you’re not a good fit yet. Provided you’re a skillful engineer, you’re likely to get more chances.
Photo by Noah Silliman on Unsplash
As I write this, John Washam is working at Amazon in a pretty cushy position and is happy with his life. His job gives him the satisfaction of working at the best of the tech in one of the most powerful companies in the world. His skill has opened up pretty much every job to him and the experience at Amazon will open up more, maybe even his first love, Google.
Piyush Tainguriya
An engineer by education, writer by profession and a stand-up comic by vocation. I'm only half joking though.
January 25, 2018
January 26, 2018
February 02, 2018
Comments (0)
*Some Comments would not be shown if marked as Spam