Saturday, July 18, 2020

Google, Facebook, Amazon [offer] | Graduate | 2020

Original post: Link

Background

I just finished my B.sc. in Computer Science and I’ve been working in the field since July 2019 (as a full stack developer in Java). I have never done competitive programming and I have never been very interested in algorithms (only what I have learned at University and at my job).
Also, I have never really dreamed of working at one of these big tech companies, as I was never brilliant to programming and I really struggled in my first year of University. It was already a big thing for me that I was doing well in University (top of my class) and had a great job that I loved.

2018 - October

A recruiter from Google reached out to me after I registered to one of their events and asked if I’m interested in an internship for 2020. I sent them my CV, but they didn’t offer me an interview.

2019 - October 30th

Another recruiter from Google reached out to me, saying that she knows that I talked with one of her colleagues in the past and maybe we can try again. This time it was for a full time graduate position. I asked them to give me 5 weeks to prepare for the first interview.

During these 5 weeks I did the following (it might seem that I could have done more, but I was working 6 hr/day + University) :

  • I created an account on leetcode and started solving easy problems (I spent 2h/day on average)
  • I came across Kevin Naughton Jr YouTube channel and watched only the videos in which he was solving Google problems (I tried to solve it by myself first and then watch his video). Kevin helped me a lot during this time, because I was at the beginning and I needed to learn how to approach problems, which Kevin explains really well. I totally recommend to watch his videos if you are coding in Java.
  • I read Cracking the Coding Interview (not entirely, I focused on the topics that I was less familiar with)
  • I did 2 mock interviews with a colleague of mine who was an intern at Google

2019 - December 10th (first Google phone interview)

I was extremely nervous (as I usually am) and I had a really cold interviewer that barely even talked or helped me. I didn’t know how to completely solve the problem. I had a good start but I got stuck on the way, I panicked and I didn’t manage to get to a working solution. I was really sad and I was sure that they will say no (in my opinion it was disastrous).

2020 - January 20th

After 6 weeks, I reached out to my recruiter to ask what is going on. She apologised for the late reply because of the Christmas holidays. On the 21st she called me and provided very detailed feedback (the interviewer didn’t thought that it went so bad, he really appreciated my ds knowledge and the approach I had in mind). She told me that it wasn’t good enough to proceed to the onsite interview, but they want me to have another phone interview. I couldn’t believe it.

2020 - January 22nd

A recruiter from Facebook reached out to me on LinkedIn and asked me if I am interested in a full time graduate position. We scheduled a phone interview.

2020 - February 17th (Facebook phone interview)

It was a great experience, way better than the previous one with Google. I had a really nice interviewer, we were on the same page and talked a lot (even laughed a little). He asked me to solve two questions (leetcode easy level) and we had 15 minutes to talk about Facebook. It was a great confidence boost. I received a response the following day and we scheduled the onsite interview.

2020 - February 24th ( second Google phone interview)

This time it was much better. I felt less anxious (thanks to the positive outcome from the Facebook interview) and I had a nicer interviewer with whom I really had a conversation about the problem. (He also gave me a warm-up question). I managed to solve the problem efficiently, but I was still worried. I received the feedback 3 days later and we scheduled an onsite interview.

P.S: My recruiter sent me an email prior to the interview to wish me good luck (because she knew how nervous I was the first time) and it was really nice of her. Honestly, the people at Google are the nicest I’ve met along the way.

2020 - March 18th

A recruiter from Amazon reached out to me on LinkedIn and asked me if I was interested in a (you guessed it) full time graduate position. I applied online and I was soon asked to complete some preliminary steps (at Amazon there are 3 online steps to take before you get an interview with a real person).

2020 - March 26th (Facebook onsite interview)

It took place online, because the corona virus situation was getting worse across Europe. I had the behavioural interview first and then 2 technical ones. In my opinion all of them went very well. I solved all the problems (there was one small easy question at the behavioural interview and then 1 question at each technical interview - I would say that both were of medium difficulty) and I talked about complexities, different approaches etc. I asked them if they are satisfied with the result and they said yes. I was super confident about this.

2020 - April 1st (Facebook response)

I received an email from my recruiter thanking me for interviewing with them and saying that unfortunately they won’t make me an offer and that they cannot provide any feedback. Honestly, it crashed me, because I really put my hopes up and I was confident that it went so well (and I am really good at evaluating my own work).

2020 - April 6th (Google onsite interview)

Even though the response from Facebook put me in a bad state of mind, I tried to recover quickly because it was an offer from Google that I really wanted.

  • First interview was ok. The interviewer was young and he didn’t speak English very well so we had a hard time understanding each other, but I solved the problem (not the most optimal solution though) and he seemed quite satisfied.
  • I nailed the second interview and I am really proud of it (the interviewer told me that it was a pleasure to talk with me and that he roots for me to get an offer). He kept asking follow up questions and it got really interesting talking about trade offs and many different approaches.
  • The third interview was the behavioural one. It was ok, we shared some similar ideas about the way we approach our work and we laughed a little together.
  • The fourth one was even worse than my first phone interview. My interviewer said that I can do whatever I consider fit and he did not provide any help or guidance, he just stood there and watch me struggle. It was the hardest problem I have ever come across in an interview (harder than many hard questions on leetcode) and I honestly did not even know how to begin. It was horrible, I cried afterwards because everything was going so well until this.
  • I forced myself not to screw up my last interview and I did not. I solved the problem and received a second problem that I solved as well (I did not manage to finish writing the code, but the recruiter understood what I wanted to do and he was satisfied with it).

The same day, I received an email from Amazon saying that I did well and that they want to have an onsite interview with me.

2020 - April 24th (Google response)

The recruiter called me and asked how I think the interviews went. I told her exactly what I wrote above. She then said that the feedback matched my impression and that if it wasn’t for the third interview, I would have for sure got an offer. However, she suggested to prepare some more and have another onsite interview in September-October and that she will reach back to me at the end of the summer.

HOW I HAVE PREPARED DURING THIS WHOLE TIME

  • In February I upgraded my leetcode account to premium. I started solving company specific problems (more Facebook problems before the Facebook interview and so on). I have solved 130 easy, 167 medium and 38 hard questions. I have also done a lot of mock interviews here.
  • I invested more time in solving problems (3-4 hr/day on average) and I even took some unpaid leave from work to have more time to prepare.
  • I continued to solve problems from Kevin’s channel until I ran out of them.
  • I came across this YouTube channel: https://www.youtube.com/channel/UCamg61pfZpRnTp5-L4XEM1Q. I am as grateful to this girl as I am to Kevin. I found here solutions and indications to problems I really struggled with. (On this channel you can find problems that are harder than the ones Kevin has on his channel).
  • I’ve done 4 more mock interviews, 2 before my Facebook onsite and 2 before my Google onsite.

2020 - April 30th (Amazon onsite interview)

Honestly, at this point I was exhausted. I had no more energy to prepare for this interview. The only thing that motivated me was that one of my friends received an offer at the same location I was interviewing for.

There were 3 interviews of 1 hour consisting of 20 minutes of behavioural questions and 30-35 minutes for solving a problem (they were all of medium difficulty). At the last interview, it was a system design question.

As I said, I was exhausted and I had little desire to get an offer from Amazon so I was not nervous at all at these interviews (as I was at Google and Facebook) and I think this helped me a great deal. I really was myself and I had 3 great conversations with the interviewers. I was not afraid to say something wrong or to suggest a strange solution and it really paid off. Honestly, the second interview was the most interesting conversation I had with an interviewer ever.

2020 - May 8th (Amazon response)

The recruiter called me and congratulated me for the interviews. She then said that they want to make me an offer to join them. I started shacking and smiling and I honestly couldn’t believe it.

MY THOUGHTS

  • Everything is possible. I went from 0 experience with coding problems to getting an offer in 6 months. Believe in yourself that you can do anything.
  • Practice and consistency are the most important. Try to understand how to APPROACH problems, instead of memorising solutions.
  • Do not be afraid to ask for as many time as you may need to prepare.
  • Try to be yourself. In the beginning my mindset was “I need to behave this way and say this or that in order for them to like me” and because of this, I was extremely nervous and anxious. I was afraid to say something wrong, I kept asking “Is it OK like this?” “Do you think this would be a good idea?” and other similar questions. After Facebook rejected me I started to think that I should be myself and if they do not like me, then maybe I wouldn’t have fit in anyway. I started to be more confident in my ideas and in my abilities. I stopped asking those silly questions. Now I see an interview as an occasion to sell my solution to a client. I have 45 minutes to convince him to “buy” my solution, even if it is not the best and even if I’m not even sure what I am doing. This mindset changed the game for me. You might be nervous, you might not be sure that you know how to solve the problem, you might not know what the optimal solution is, but you can let your interviewer see a confident candidate and that wins you points.
  • TALK. I cannot stress this enough, but it is so important to keep your interviewer engaged.
  • Do not fear rejection. You learn more from it than from success. The rejection from Facebook and the fact that I didn’t even receive feedback crashed me. But it eventually made me stronger and more determined to do better.
  • Do not throw away opportunities. I had little interest in the interview with Amazon, because Google is my ultimate dream. However, I am so grateful for the fact that they made me an offer and I believe it is an important step forward.
  • Do mock interviews with people who have had interviews before. They are of great help.

If you read up until this point, thank you and I wish you all the luck in the world. I root for all of you to get the job of your dreams. I hope this post will inspire some of you.


No comments:

Post a Comment

My Journey from a Tier-3 College to Microsoft, Google, and Meta: Lessons Learned

Original post: Link   Time to give back to community. Went through couple of post myself and got inspired and belief that cracking FAANG is ...