diff --git a/contents/interview-formats-top-companies.md b/contents/interview-formats-top-companies.md new file mode 100644 index 00000000..f1f180eb --- /dev/null +++ b/contents/interview-formats-top-companies.md @@ -0,0 +1,132 @@ +--- +id: interview-formats-top-companies +title: Interview format at top companies +sidebar_label: Top companies +--- + +:::info + +With COVID around, many companies are doing remote interviews even for the onsite rounds, so the instructions will differ. + +::: + +Are there companies you would like to know more about? Email us at [business{at}techinterviewhandbook.org](mailto:business@techinterviewhandbook.org). + +## Airbnb + +- Recruiter phone screen +- Technical phone interview: + - 1 or 2 x Algorithm/front end on CoderPad/CodePen +- Onsite (General): + - 2 x Algorithm coding on CoderPad + - 1 x System design/architecture + - 1 x Past experience/project + - 2 x Cross functional +- Onsite (Front End): + - 2 x Front end coding on CodePen. Use any framework/library + - 1 x General coding on your own laptop + - 1 x Past experience/project + - 2 x Cross functional +- Tips: + - All sessions involve coding on your own laptop. Prepare your development environment in advance + - You are allowed to look up APIs if you need to + - They seem to place high emphasis on compilable, runnable code in all their coding rounds + - Cross functional interviews will involve getting Airbnb employees from any discipline to speak with you. These interviews are mostly non-technical but are extremely important to Airbnb because they place a high emphasis on cultural fit. Do look up the Airbnb section of the behavioral questions to know what sort of questions to expect + +## Asana + +- Recruiter phone screen +- Technical phone interview +- Onsite (Product Engineer): + - 3 x Algorithm and system design on whiteboard within the same session + - 1 x Algorithm on laptop and system design. This session involves writing code on your own laptop to solve 3 well-defined algorithm problems in around 45 minutes after which an engineer will come in and review the code with you. You are not supposed to run the code while working on the problem +- Tips: + - No front end questions were asked + - Asana places high emphasis on System Design and makes heavy use of the whiteboard. You do not necessarily have to write code for the algorithm question of the first three interviews + - All 4 sessions involve algorithms and system design. One of the sessions will be conducted by an Engineering Manager + - The last session will involve coding on your own laptop. Prepare your development environment in advance + - Regardless of Product Engineer or Engineering Generalist position, their interview format and questions are similar + +## Dropbox + +- Recruiter phone screen +- Technical phone interviews: + - 2 x Algorithm/front end on CoderPad/CodePen +- Onsite (Front End): + - 2 x Front end on CodePen. Only Vanilla JS or jQuery allowed + - 1 x General coding on CoderPad + - 1 x All around. Meet with an Engineering Manager and discussing past experiences and working style +- Tips: + - You can code on your own laptop and look up APIs + - Dropbox recruiters are very nice and will give you helpful information on what kind of questions to expect for the upcoming sessions + - One of the front end sessions involve coding up a pixel-perfect version of a real page on the Dropbox website. You'll be given a spec of the desired page and you'll be asked to create a working version during the interview + +## Google + +- Recruiter phone screen +- Technical phone interview: + - 1 or 2 x algorithm on Google Doc +- Onsite: + - 1 or 2 x Front end on whiteboard. May be required to use Vanilla JS (or at the most, jQuery) depending on the question. (Front End only) + - 2 to 4 x Algorithm on whiteboard + - 1 x General Cognitive Ability, Leadership and "Googleyness". +- Team matching + - Speak with managers from different teams who are interested in your profile +- Tips: + - In rare cases, candidates may even be allowed to skip the phone interview round and advanced to onsite directly + - For non-fresh grads, you only receive an offer if you are successfully matched with a team + +## Lyft + +- Recruiter phone screen +- Technical phone interview: + - 1 x Algorithm/Front end over JSFiddle +- Onsite (Front End): + - 4 x Front end on Coderpad/your own laptop. Use any language/framework + - 1 x Behavioral. Meet with an Engineering Manager and go through candidate's resume +- Tips: + - Can use whiteboard and/or laptop + - For front end coding, I opted to use React and had to set up the projects on the spot using `create-react-app` + +## Meta (previously Facebook) + +- Recruiter phone screen +- Technical phone interviews: + - 1 or 2 x Algorithm/front end on Skype/CoderPad +- Onsite: + - 2 x Technical coding interview on whiteboard + - 1 x Behavioral. Meet with an Engineering Manager and discussing past experiences and working style + - 1 x Design/architecture on whiteboard +- Onsite (University Grad): + - 2 x Technical coding interview on whiteboard + - 1 x Behavioral. Meet with an Engineering Manager and discussing past experiences and working style +- Tips: + - You are only allowed to use the whiteboard (or wall). No laptops involved + - For the behavioral round, you may be asked a technical question at the end of it. Front end candidates will be given a small HTML/CSS problem nearing the end of the session + - For the coding rounds, you may be asked one or more questions depending on how fast you progress through the question + +## Palantir + +- Recruiter phone screen +- Technical phone interview: + - 1 x Algorithm over HackerRank CodePair and Skype +- Onsite (General): + - 2 x Algorithm on whiteboard + - 1 x Decomposition (system design) on whiteboard +- Onsite (Front End): + - 1 x Front end on your own laptop. This session lasts about 1.5 hours. Use any library/framework + - 1 x Decomposition (system design) on whiteboard +- Tips: + - I opted to use React and had to set up projects on the spot using `create-react-app` + - You may be asked to meet with Engineering Managers after the technical sessions and it's not necessarily a good/bad thing + +## WhatsApp + +- Recruiter phone screen +- Technical phone interview: + - 2 x Algorithm over CoderPad +- Onsite (Web Client Developer): + - 4 x Algorithm on whiteboard +- Tips: + - No front end questions were asked + - 1 of the interviewers is an Engineering Manager diff --git a/contents/interview-formats.md b/contents/interview-formats.md index 9c8febd0..fb3730a6 100644 --- a/contents/interview-formats.md +++ b/contents/interview-formats.md @@ -1,6 +1,7 @@ --- id: interview-formats -title: Interview formats +title: Interview formats overview +sidebar_label: Overview --- Interviews are a multi-stage process and each stage can consist of vastly different formats. @@ -47,130 +48,3 @@ The onsite stage usually consists of multiple rounds (coding, system design, beh For onsite interviews at smaller (non-public) companies, most will allow (and prefer) that you use your own laptop. Hence it is important that you prepare your development environment in advance. If the company provides lunch, you might also have a lunch session with an employee where you can find out more about the company culture. - -:::info - -With COVID around, many companies are doing remote interviews even for the onsite rounds, so the instructions will differ. - -::: - -## Formats of top companies - -### Airbnb - -- Recruiter phone screen -- Technical phone interview: - - 1 or 2 x Algorithm/front end on CoderPad/CodePen -- Onsite (General): - - 2 x Algorithm coding on CoderPad - - 1 x System design/architecture - - 1 x Past experience/project - - 2 x Cross functional -- Onsite (Front End): - - 2 x Front end coding on CodePen. Use any framework/library - - 1 x General coding on your own laptop - - 1 x Past experience/project - - 2 x Cross functional -- Tips: - - All sessions involve coding on your own laptop. Prepare your development environment in advance - - You are allowed to look up APIs if you need to - - They seem to place high emphasis on compilable, runnable code in all their coding rounds - - Cross functional interviews will involve getting Airbnb employees from any discipline to speak with you. These interviews are mostly non-technical but are extremely important to Airbnb because they place a high emphasis on cultural fit. Do look up the Airbnb section of the behavioral questions to know what sort of questions to expect - -### Asana - -- Recruiter phone screen -- Technical phone interview -- Onsite (Product Engineer): - - 3 x Algorithm and system design on whiteboard within the same session - - 1 x Algorithm on laptop and system design. This session involves writing code on your own laptop to solve 3 well-defined algorithm problems in around 45 minutes after which an engineer will come in and review the code with you. You are not supposed to run the code while working on the problem -- Tips: - - No front end questions were asked - - Asana places high emphasis on System Design and makes heavy use of the whiteboard. You do not necessarily have to write code for the algorithm question of the first three interviews - - All 4 sessions involve algorithms and system design. One of the sessions will be conducted by an Engineering Manager - - The last session will involve coding on your own laptop. Prepare your development environment in advance - - Regardless of Product Engineer or Engineering Generalist position, their interview format and questions are similar - -### Dropbox - -- Recruiter phone screen -- Technical phone interviews: - - 2 x Algorithm/front end on CoderPad/CodePen -- Onsite (Front End): - - 2 x Front end on CodePen. Only Vanilla JS or jQuery allowed - - 1 x General coding on CoderPad - - 1 x All around. Meet with an Engineering Manager and discussing past experiences and working style -- Tips: - - You can code on your own laptop and look up APIs - - Dropbox recruiters are very nice and will give you helpful information on what kind of questions to expect for the upcoming sessions - - One of the front end sessions involve coding up a pixel-perfect version of a real page on the Dropbox website. You'll be given a spec of the desired page and you'll be asked to create a working version during the interview - -### Facebook - -- Recruiter phone screen -- Technical phone interviews: - - 1 or 2 x Algorithm/front end on Skype/CoderPad -- Onsite: - - 2 x Technical coding interview on whiteboard - - 1 x Behavioral. Meet with an Engineering Manager and discussing past experiences and working style - - 1 x Design/architecture on whiteboard -- Onsite (University Grad): - - 2 x Technical coding interview on whiteboard - - 1 x Behavioral. Meet with an Engineering Manager and discussing past experiences and working style -- Tips: - - You are only allowed to use the whiteboard (or wall). No laptops involved - - For the behavioral round, you may be asked a technical question at the end of it. Front end candidates will be given a small HTML/CSS problem nearing the end of the session - - For the coding rounds, you may be asked one or more questions depending on how fast you progress through the question - -### Google - -- Recruiter phone screen -- Technical phone interview: - - 1 or 2 x algorithm on Google Doc -- Onsite: - - 1 or 2 x Front end on whiteboard. May be required to use Vanilla JS (or at the most, jQuery) depending on the question. (Front End only) - - 2 to 4 x Algorithm on whiteboard - - 1 x General Cognitive Ability, Leadership and "Googleyness". -- Team matching - - Speak with managers from different teams who are interested in your profile -- Tips: - - In rare cases, candidates may even be allowed to skip the phone interview round and advanced to onsite directly - - For non-fresh grads, you only receive an offer if you are successfully matched with a team - -### Lyft - -- Recruiter phone screen -- Technical phone interview: - - 1 x Algorithm/Front end over JSFiddle -- Onsite (Front End): - - 4 x Front end on Coderpad/your own laptop. Use any language/framework - - 1 x Behavioral. Meet with an Engineering Manager and go through candidate's resume -- Tips: - - Can use whiteboard and/or laptop - - For front end coding, I opted to use React and had to set up the projects on the spot using `create-react-app` - -### Palantir - -- Recruiter phone screen -- Technical phone interview: - - 1 x Algorithm over HackerRank CodePair and Skype -- Onsite (General): - - 2 x Algorithm on whiteboard - - 1 x Decomposition (system design) on whiteboard -- Onsite (Front End): - - 1 x Front end on your own laptop. This session lasts about 1.5 hours. Use any library/framework - - 1 x Decomposition (system design) on whiteboard -- Tips: - - I opted to use React and had to set up projects on the spot using `create-react-app` - - You may be asked to meet with Engineering Managers after the technical sessions and it's not necessarily a good/bad thing - -### WhatsApp - -- Recruiter phone screen -- Technical phone interview: - - 2 x Algorithm over CoderPad -- Onsite (Web Client Developer): - - 4 x Algorithm on whiteboard -- Tips: - - No front end questions were asked - - 1 of the interviewers is an Engineering Manager diff --git a/contents/questions-to-ask.md b/contents/questions-to-ask.md index 2acba4b6..ffacbc28 100644 --- a/contents/questions-to-ask.md +++ b/contents/questions-to-ask.md @@ -1,6 +1,6 @@ --- id: questions-to-ask -title: Questions To ask +title: Questions to ask --- Here are some good questions to ask at the end of the interview, extracted from various sources. The ones in **bold** are the ones that tend to make the interviewer go "That's a good question" and pause and think for a bit. diff --git a/contents/self-introduction.md b/contents/self-introduction.md index 3eae1228..7260669c 100644 --- a/contents/self-introduction.md +++ b/contents/self-introduction.md @@ -1,6 +1,6 @@ --- id: self-introduction -title: Self Introduction +title: Self introduction --- Interviewers want to work with candidates they like. Leave a good/deep impression and it will increase your chances of success. Most of us are not strangers to self introductions as we meet new people now and then and have to introduce ourselves every once in a while. However, self introductions in interviews are slightly different from real life - you need to tweak it to your advantage - tailor the self introduction to the role and company you are applying for! Your self introduction evolves as you grow and are at a different stage of your career. diff --git a/website/sidebars.js b/website/sidebars.js index bee54736..bd206aec 100755 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -14,7 +14,12 @@ module.exports = { { 'General interview tips': ['self-introduction', 'questions-to-ask'], }, - 'interview-formats', + { + 'Interview formats': [ + 'interview-formats', + 'interview-formats-top-companies', + ], + }, { 'Coding interviews': [ 'coding-round-overview',