0% found this document useful (0 votes)
92 views14 pages

How To Crack The Big Tech Coding Interview and Get Six Digits Right Out of College

The document provides guidance on how to prepare for and land a high-paying job at a Big Tech company right out of college. It covers updating your resume, controlling nerves during interviews, applying to multiple companies to improve chances, and focusing on algorithm skills which are key for interviews. The overall goal is to convince readers they are capable of working at these companies and save them time by providing a preparation blueprint.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views14 pages

How To Crack The Big Tech Coding Interview and Get Six Digits Right Out of College

The document provides guidance on how to prepare for and land a high-paying job at a Big Tech company right out of college. It covers updating your resume, controlling nerves during interviews, applying to multiple companies to improve chances, and focusing on algorithm skills which are key for interviews. The overall goal is to convince readers they are capable of working at these companies and save them time by providing a preparation blueprint.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

How to crack the Big Tech coding

interview and get six digits right out of


college

By an ex-Amazonian and current Meta software engineer


Content of the book

1. Introduction
1. Presentation of myself
2. What saves you when you buy this book
2. Why should you do this in the first place ?
1. Advantages
2. Motivation & Pride
3. Nice to have prerequisites
1. Academic Background & Achievements
4. What to do before starting the interviewing process
1. Update your resume
2. Control emotions under high pressure
3. Make a list of FAANG companies you want to join
4. Prepare in advance if needed
5. Main Steps
1. Getting the interview
1. When to apply
2. How to apply
3. What to do after applying
2. Passing the interview
1. How to prepare for that
2. How to negotiate a potential offer
3. What to do if you have failed ? (bounce
back into action)

6. Revision & Conclusion ( you can read this chapter if you do not
want to read the entire book - it will contain all the necessary
information )
1. INTRODUCTION

1. Presentation of myself:

Hi, I do not want to make myself popular or brag about my


achievements, so I will not mention my name. I am an east european
student who is now a new-grad software engineer at Meta platforms in
London. My background is as follows:

1. Finished a top high-school in my country, with participation in


national contests in maths and algorithmics. (however, these
achievements would not matter as much to FAANG)
2. Finished a computer science university in my home country, while
having a part-time job for 60% of the period. (I knew how to
program and code, but I did not have the most spectacular grades.
Finished with a grade over 85% or upper 2:1)
3. Went to a master program in Germany and spent one year there. (
the real reasons were for immigration, the prestige of the university
and the chance to have more time to apply to FAANG companies
as a new grad or for internships).
4. In the meantime, I got an internship at Amazon.
5. After the first year of masters and following the summer internship
at Amazon, I received the Meta offer. I decided to quit ( drop ) my
master and start at Meta as soon as possible.

2. What saves you when you buy this book:

Honestly, I spent two-three years figuring out how the process


works, when to apply, what to learn, how to prepare, how to make a
good CV etc. But, the most important part is convincing yourself that
you are worthy enough for the title of FAANG engineer (so you can
make the first steps FASTER). Trust me, once you learn the process and
enter, you will discover yourself that the engineers that work at Big Tech
are not programming gods, but people who can focus and learn new
things quickly at a deep level. FOLLOWING my blueprint you will
save time in developing a healthy system for getting the interviews and
preparing for them ( with a healthy mind and going in with the mindset
of cracking it ). The things I can not help you with are in regard with
what you will do during the interview. (it will be just yourself with the
interviewer - Do not worry, I have got some advice for this part too).

2. Why should you do this in the first place?

If you have bought this book, I think you know the answers, if not, let
me tell you the advantages from the perspective of a FAANG engineer,
not just the reasons I made for myself in order to get some motivation
for grinding this goal:

1. Salary - it’s not a secret that engineers at top tier tech companies (
Google, Meta, Netflix, Apple, Microsoft, etc ) are paid a lot of
money. (see levels.fyi). The young specialists (Junior developers)
are among the highest paid employees in the country, having less
than 1-2 years of experience. Their salaries often exceed the
salaries of consultant doctors, CEOs and people with 15+ years of
experience in other domains. - that’s one of the major reason why
people join Big Tech
2. Prestige - having one big tech name on your CV will make you
more “desirable” for the job market. That will prove to other
companies that you were able to pass the “bar” of the big names.
And for a fact, your Linkedin DMs will explode, getting offers
from contractors, crypto companies and other Big tech companies.
3. Challenge - at a Big Tech company working for billions of
customers you will confront unique problems of software
scalability and design. You can not get these types of software
problems anywhere else and here you can be creative solving them
4. Benefits - have you heard about a company that gives you free
food, snacks, beverages, breakfast, lunch, dinner, cares about your
mental and physical health as well as paying for your commute and
sport activities? - Big tech does that.

Motivation and pride

The simple answer is this. If you will stay in the FAANG ecosystem ( or
maintain being at top tier tech companies - like Stripe, Uber, Airbnb etc )
for, let’s say twenty years you will:
● Have a high chance of becoming a millionaire with the right
investments as an employee.
● Have a professional life at the highest standards with a lot of
benefits and prestige.
● Have the career life worry-free ( trust me, the top tier companies
know how to take care of their developers )

After that, you can freely choose to retire or do whatever you want with
your life. ( possibly writing more code to make the world a better place
:)) ).
3. Nice to have prerequisites

1. Academic Background & Achievements


● Computer Science Bachelor's Degree - The name of the
university in most cases does not matter (with the exception
of first 10-20 in the world), but having this degree does. Of
course there are some exceptions to this rule, but from what
people I have met, all of them had this degree and it is
especially important for getting the Software Engineer role.
The only viable exception that I saw, is having a Data
Science degree, which can be useful for a data scientist role -
Big tech have also this role, which is highly paid like the
SWE role. After some time, you can make the transition from
Data Scientist to SWE.
● Algorithmic skills - You need to play by this rule. Most of
the interviews are about algorithmic problems and how you
can solve them in the most time and space efficient way. This
is the skill that you must have in order to enter the Big Tech
door. This is the skill that will define how big is your chance
/ divided by luck of getting the offer. This is a skill that must
be trained a lot before going in for an interview.
4. What do you have to do before starting the
interview process

● Update your resume

You need to have a clear and concise resume with all of your most
important /stand-out achievements and personal projects. The main thing
is to keep things simple, highlight outstanding facts that you have done
and do not exceed 2 pages ( only one page is recommended ).

For important things I mean contests where you got into the top
10%, excellent academic grades, personal projects (if they are interesting
and challenging) and voluntary or team-related activities ( very
important for communication skills ).

I will recommend this youtube video for more context :


https://www.youtube.com/watch?v=aHB8bx4P7TE&t=6s&ab_channel=
ChrisChang

● Control emotions under high pressure

It is indeed stressful passing an interview when you know that is so


much on the line. Taking the first train will let you take the next
train easier. ( i. e. getting into a FAANG company will open up a
lot of opportunities and will make the job market search for you
not the other way around )
I found two solutions under the same motto : PRACTICE
PRACTICE PRACTICE. - WITH TIME DEDICATED IN THE GRIND
YOU WILL UP YOUR SELF-CONFIDENCE AND RESILIENCE
SKILL

1. During the preparation phase you need to spend an average


of 2-3 hours per week day and 4-6 hours per weekend day
learning how to solve problems. After you have done this for
3-4 weeks ( it is highly recommended to do more ) you will
get a boost in your morale, self-confidence and patience.
2. Have more shots prepared - Is doing an interview stressful ?
Why not try to do more than one - for example 4,5 etc ? The
thing with this is that it will allow you to fail given the fact
that you have more shots at other companies. This will lead
to mental easiness and less pressure. You will know that if
you fail this, you have time to recover or rebound. ( i.e. even
though I fail the Google interview, I still have the interviews
from apple and Uber, no need to panic or rush )

● Make a list of FAANG companies that you need to join :

This is a must for having an easy time scheduling things. You


should do this:
1. Go to levels.fyi or teamblind.com ( or whatever site
you enjoy most ) and make a list of companies you are
interested in. ( be sure the list consists of minimum 15
top tier companies - ex : Meta, Google, Stripe, Amazon,
Uber, Doordash, Jane Street, Bloomberg, Apple etc )
2. From the list that you have made, enter on each site and
make an application, request for a referral or contact the
career team via email to tell them about your interests. -
it was important at step 1 to select more companies, for
the reason that not all companies from the preselected
list have job openings. ( let’s say now you will have 7-9
companies that provide jobs you're searching for)
3. Apply to the best of your abilities and try to get an
interview. - if you have at least 2-3 interviews then you
are good. Even one is ok, but from what I have
discussed in the previous sections, two is way better.

● Prepare in advance if needed

After or before getting the interviews, you need to be sure or


certain on how well you can pick up the algorithmic skills. That’s the
meat of the interviews, solving problems in the most efficient ways. You
need to make yourself comfortable solving most of leetcode
(leetcode.com) medium problems in 12 to 15 minutes. You can make
this happen only with practice. So you need to do this :
1. Prepare in advance an average of 3-5 hours per day for a
period of 2 months if you have no algorithmic experience.

2. Prepare in advance an average of 3-5 hours per day for a


period of 1 month if you have some algorithmic experience
or if your algorithmic skills have rotten.

3. Prepare in advance an average of 4 hours per day when you


are 15-20 days before the interview and you know or can
catch up with your algo skills.
5. Main Steps

1. Getting the interview

I think this is the most important step. It’s the most difficult one
because you don’t have control over it, but once you get it, it’s 99,9%
on you to pass it, which is controllable. (I let 0,01% change for getting a
bad interviewer, it’s rare, but it happens).

When to apply ?

Quick tip: It will be easier to get into FAANG as an intern or a new


grad. After that it will be harder because: interviews will get harder and
FAANG companies will look mainly ( but not always ) for ex-FAANG
people. ( + it’s competitive, many people will try their luck here )

If you apply for an internship or a new grad role for the next
summer, you need to apply from early September of the year before.
Places at Big tech have high competition and places get occupied fast.
You need to apply as early as possible. ( ex. For summer 2023 positions,
you need to apply from early sept 2022 ).

If you apply for a mid/senior role, you can apply anytime. Be sure
to look as often as you can at the job openings.
How to apply ?

First you need to make a good CV and then you can apply. You can
apply in the following ways:

1. Using the company websites - do not recommend that, it’s


highly unlikely to get an interview, although it is possible
2. Getting a referral from someone who works there - yes, this
is a good idea. You will know that someone will look at your
CV and will probably get you an interview. - although I have
been myself rejected using this method.
3. Handing your CV at big tech events - I lived in an east
European country and Google/Facebook/Uber, etc come to
our capital 2 times a year for events. It was a good practice to
hand the CV to the presenter after the event. ( my former
colleague got an interview and an offer using this method ) -
so sometime it works

What to do after applying ?

Simple. Apply to other companies to have more options on the


plate. After you have applied to as many as you could, you can start a
mild/normal preparation depending on your algorithmic skills. For
example, when I received the amazon interview, I had 20 days to
prepare. First 3 I worked 6 hours per day then I took one off ( it was the
new years eve ) and then 8-10 hours of learning the following days.
2. Passing the interview

What to do after applying ?

1. Ask people who took the interview prior, to know exactly


what you should expect (or consult online websites for this:
i.e. leetcode.com, interviewcake etc)
2. Do the teamblind.com algo problems list
3. WORK WORK WORK - not to forget to make a plan for the
preparation. For example: 1 day dynamic programming ( or
binary trees, or doubly linked lists etc.) + 2 hours of
behavioral preparation + 3-5 leetcode hard problems etc

Also remember to work smart not hard (learn to be


comfortable in new problem environments, notto be just like
a robot), or BETTER, work smart and hard.

How to negotiate a potential offer ?

You can do this properly when you have two or more offers. Then
you can play back and forth with the companies. Honestly, I never did
it, but on teamblind.com you can find a lot of tips on how to do that.

What to do if you have failed ? ( bounce back into action ) ?

Go back and interview again at FAANG. Now that you have more
experience it will be easier. If FAANG is not available or you have a
cooldown, go and interview at other companies. Besides your full-time
job, be a full-time person who gets and prepares for interviews. The aim
here is to be better at interviews, not to accept potential offers.So you
can do as many as you want, because it will be better for your career in
the long run.

6. Revision & Conclusion

Revision

1. Have the level of your role in mind when you select the
companies. ( Junior, Mid, Senior or L3,L4,L5 etc - for Big Tech )
Depending on the role you should apply : anytime ( for mid and
senior roles ) and early September ( for internships and new grad
positions ). Applying for different levels like L3 at one company
and L4 at another company is also recommended, however
long-term you need to choose the higher level (for promotion and
salary purposes).
2. Make a long list of 10-25 companies that you wish to apply to
Example: Meta, Amazon, Uber, Google, Stripe, Doordash,
Databricks, Lyft, Jane Street, Palantir etc.
3. When you apply, make sure you will have someone who will give
you a referral, or email someone who works in that company that
can help you out (with the mail of the career team, or HRs that
work there ). You can also try to apply from the company website,
but I do not recommend it.
4. After or before you get some interviews ( depending on your algo
skills ), make sure you set time ahead to prepare. - for algorithmic
problems ( teamblind problem list, leetcode, hackerrank etc. ) +
behavioral skills ( Dan Croitoru channel on youtube etc.). If you do
not have interviews, try interviewing for lower tier companies with
the aim of preparation, until you get the chance for a Big tech.
5. Set your interviews in the same period. ( like one week with 2-3
interviews ) - in this way you can interview more companies with
one period of preparation
6. Be tunnel vision with your preparation - prepare for as much time
as you can everyday ( be like a caveman who is in the ready state )
and you can celebrate after you get the offer.
7. Build resilience with your preparation - Working smart and hard
will boost your morale and self-confidence which will make you
less prone to error during the interview.
8. Negotiate the offers if you can ( have at least 1 competing offer ).
9. Celebrate the success - the hard-work is done and paid off, now
you can relax for some time and then back again into action ;) .

Conclusion

Dear reader,
The aim of this book is to prepare people who want to reach
FAANG level companies, get a good salary and have a nice career
growth - hence, have an easy life. The skills I mentioned in the book
cost me two years of learning by trial and error. I think you can find
most of the information here online, but I tried to give you a short and
concise summary and put the pieces in place. I will try to do the same in
other areas of life and write short e-books about: goal setting, how to
build a routine, dopamine detox, investing etc. I wish you success ! - and
please excuse me for the way I write/express, it’s my first ebook.

You might also like