How I got a job at Google

Posted in Front End Engineering, Google, Open Source, Quora, YouTube on by Rick Viscomi.

This was originally posted to Quora as an answer to the question What are the ways to utilize 6 months to build a skill-set to get into Facebook or Google?.

I graduated about three years ago with a BS in Computer Science and the only thing I wanted to do was work for Google. Before I graduated, I did well on a phone interview and was invited to interview on-site at YouTube for a Software Engineer position. I did the interview, walked out feeling great about my performance, and not too long after I got the dreaded rejection message. It took a long time and a lot of reflection to realize what went wrong.

It was my very first on-site technical interview. I literally had zero experience with it. Thinking back, I did everything embarrassingly wrong.

Get solid interview experience. Interviewing itself is a skill, and you don’t want to be honing that skill when it matters most. The more you interview, the more comfortable you will get. Everything else will follow when you just chill out and convey your thoughts clearly.

Think about how you’ll answer the generic “tell me a little about yourself” question. After many many interviews, I finally learned that this question is less about me and more about the interviewer. Frame your answer around what they’re looking to see from you (hint: brevity and relevance to the job). Make your pitch and sell it.

A year later, with more interview experience, I reapplied for the same position in a different office. Again, I did well on the phone interviews and got invited on-site.

I spent the next two weeks with a whiteboard and textbooks trying to sharpen my skills. Hours into the night I’d work on algorithms and data structures, trying not to make the same mistakes.

I came in to the interview and gave it everything I had. I was proud of myself for studying so hard and answering the tough questions. But again, I got rejected.

Wield your passions as strengths. This is one of the most important things I learned on my way to joining Google.

What did I do wrong? I interviewed for the wrong job. Like you, I’m very passionate about web development. I thought that with my CS degree, my natural career path was software engineering. I was forcing myself to become a developer that would program in C++ or Java everyday when my interests were actually in the front-end technologies like HTML/CSS/JavaScript.

I took this as a sign that I needed to realign my focus on web development and make that my career path. I read professional blogs, bought books, attended meetups; anything to learn more and become a better web developer.

A year later, I applied to the same office as last time, but for the position of User Interface Engineer. Again, I did well on the phone interviews and got invited on-site. My recruiter told me that he almost never sees anyone invited back for a third on-site interview.

Again, I studied for weeks, did the interviews, felt like I knocked them out of the park, and at the end of the day my interviewer came back in to wrap up and handed me a Google mug “for completing my third on-site interview”, like a trophy. Well, it turned out to be more of a consolation prize because again, I got my third rejection.

At this point several things happened. I wanted to give up. I wanted to change careers. Instead, I stopped focusing on getting one job at one place and I focused on self-improvement. I’ll never know exactly what went wrong in the interviews or how I could have answered better. It doesn’t matter anymore. I need to make the best of what I’ve got.

I made two figurative career-changing decisions: I started working on open source projects in areas that I care about and I also tried to learn everything possible about web performance optimizations. Through the meetups that I was already attending, I chose to stick with the New York Web Performance Meetup Group. I changed jobs to one that focused specifically on web performance, I got a speaking opportunity at the NY meetup group, and as a result I was offered a speaking opportunity at the mother of web performance conferences (Velocity). Things were great.

Maintain a healthy amount of optimistic persistence.

Out of the blue, I got an email from my very first recruiter from YouTube. A position opened up for a web developer, for which she thought I was a good fit. I pursued the opportunity, took the phone interview, and advanced to the on-site round.

I was back in California and went through the familiar gauntlet of tough questions. Like the three times before, there was one interview of the five that I really wished I had done better. Like a rerun, I’ve seen this play out a few times before and so I started to get worried.

Contrary to my anxiety and the emerging pattern of rejection, I actually got the job.

So, for anyone chasing their dream job:

  1. Don’t rush into it. Do a hundred interviews for jobs you may not even want to prepare you for the one you actually want. Learn to sell yourself before you try to sell your technical skills.
  2. Find your niche. Identify how you can best give back to the company. Hone your technical skills and do everything you can with what you’ve got to keep learning and push your career forward.
  3. Don’t give up on it. Put yourself on a trajectory that leads to your success and ride it out.

5 thoughts on “How I got a job at Google

  1. Namesh

    This is an amazing story. There are a lot of points we youngsters can pick from this. Well done Sir. Again, a great inspiring story.

    Reply
  2. Juan Martín

    Amazing post! Very motivating. I’m a software engineering student in Argentina. A lot of things to keep in mind.

    Reply
  3. Murtaza

    Thanks for sharing. Many of us forget that getting through the interviews is a bit like playing roulette. I can easily say there aren’t many people who show as much perseverance as you did. I’m sure Google is better for having you!

    Reply

Leave a Reply to Murtaza Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>