diff --git a/preparing/cheatsheet.md b/preparing/cheatsheet.md index 350bfa96..78cd06c2 100644 --- a/preparing/cheatsheet.md +++ b/preparing/cheatsheet.md @@ -9,75 +9,75 @@ For a detailed walkthrough of interview preparation, refer to the ["Preparing fo || Things | |-|-| -|**Do's**|Prepare pen, paper and earphones/headphones.| -||Find a quiet environment with good Internet connection.| -||Stay calm and composed.| -||Familiarize yourself with the coding environment (CoderPad/CodePen). Set up the coding shortcuts, turn on autocompletion, tab spacing, etc.| -|| Dress comfortably. Usually you do not need to wear shirt and tie.| +|✅|Prepare pen, paper and earphones/headphones.| +|✅|Find a quiet environment with good Internet connection.| +|✅|Stay calm and composed.| +|✅|Familiarize yourself with the coding environment (CoderPad/CodePen). Set up the coding shortcuts, turn on autocompletion, tab spacing, etc.| +|✅| Dress comfortably. Usually you do not need to wear shirt and tie.| ### 2. Introduction || Things | |-|-| -|**Do's**|Introduce yourself in a few sentences under a minute or two.| -||Mention interesting points that are relevant to the role you are applying for.| -||Sound enthusiastic! Speak with a smile and you will naturally sound more engaging.| -|**Don'ts**|Spend too long introducing yourself. The more time you spend talk the less time you have to code.| +|✅|Introduce yourself in a few sentences under a minute or two.| +|✅|Mention interesting points that are relevant to the role you are applying for.| +|✅|Sound enthusiastic! Speak with a smile and you will naturally sound more engaging.| +|❌|Spend too long introducing yourself. The more time you spend talk the less time you have to code.| ### 3. Upon Getting the Question || Things | |-|-| -|**Do's**|Repeat the question back at the interviewer.| -||Clarify input format and range.| -||Work through a small example to ensure you understood the question.| -||Explain a high level approach even if it is a brute force one.| -||Improve upon the approach and optimize. Reduce duplicated work and cache repeated computations.| -||Think carefully, then state and explain the time and space complexity of your approaches.| -||If stuck, think about related problems you have seen before and how they were solved. Check out the [tips](../algorithms) in this section.| -|**Don'ts**|Ignore information given to you. Every piece is important.| -||Jump into coding straightaway.| -||Start coding without interviewer's green light.| -||Appear too unsure about your approach or analysis.| +|✅|Repeat the question back at the interviewer.| +|✅|Clarify input format and range.| +|✅|Work through a small example to ensure you understood the question.| +|✅|Explain a high level approach even if it is a brute force one.| +|✅|Improve upon the approach and optimize. Reduce duplicated work and cache repeated computations.| +|✅|Think carefully, then state and explain the time and space complexity of your approaches.| +|✅|If stuck, think about related problems you have seen before and how they were solved. Check out the [tips](../algorithms) in this section.| +|❌|Ignore information given to you. Every piece is important.| +|❌|Jump into coding straightaway.| +|❌|Start coding without interviewer's green light.| +|❌|Appear too unsure about your approach or analysis.| ### 4. During Coding || Things | |-|-| -|**Do's**|Practice good coding style. Clear variable names, consistent operator spacing, proper indentation, etc.| -||Defensive coding. Check for nulls, empty collections, etc.| -||Explain what you are coding/typing to the interviewer, what you are trying to achieve.| -||Type/write at a reasonable speed.| -||Write in a modular fashion. Extract out chunks of repeated code into functions.| -||Use the hints given by the interviewer.| -||Practice whiteboard space-management skills.| -||Demonstrate mastery of your chosen programming language.| -|**Don'ts**|Remain quiet the whole time.| -||Spend too much time writing comments.| -||Use extremely verbose variable names.| -||Copy and paste code without checking.| -||Interrupt your interviewer when they are talking. Usually if they speak, they are trying to give you hints or steer you in the right direction.| -||Write too big (takes up too much space) or too small (illegible) if on a whiteboard.| +|✅|Practice good coding style. Clear variable names, consistent operator spacing, proper indentation, etc.| +|✅|Defensive coding. Check for nulls, empty collections, etc.| +|✅|Explain what you are coding/typing to the interviewer, what you are trying to achieve.| +|✅|Type/write at a reasonable speed.| +|✅|Write in a modular fashion. Extract out chunks of repeated code into functions.| +|✅|Use the hints given by the interviewer.| +|✅|Practice whiteboard space-management skills.| +|✅|Demonstrate mastery of your chosen programming language.| +|❌|Remain quiet the whole time.| +|❌|Spend too much time writing comments.| +|❌|Use extremely verbose variable names.| +|❌|Copy and paste code without checking.| +|❌|Interrupt your interviewer when they are talking. Usually if they speak, they are trying to give you hints or steer you in the right direction.| +|❌|Write too big (takes up too much space) or too small (illegible) if on a whiteboard.| ### 5. After Coding || Things | |-|-| -|**Do's**|Scan through your code for mistakes as if it was your first time seeing code written by someone else.| -||Check for off-by-one errors.| -||Come up with more test cases. Try extreme test cases.| -||Step through your code with those test cases.| -||Look out for places where you can refactor.| -||Reiterate the time and space complexity of your code.| -||Explain trade-offs and how the code/approach can be improved if given more time.| -|**Don'ts**|Immediately announce that you are done coding.| -||Argue with the interviewer.| +|✅|Scan through your code for mistakes as if it was your first time seeing code written by someone else.| +|✅|Check for off-by-one errors.| +|✅|Come up with more test cases. Try extreme test cases.| +|✅|Step through your code with those test cases.| +|✅|Look out for places where you can refactor.| +|✅|Reiterate the time and space complexity of your code.| +|✅|Explain trade-offs and how the code/approach can be improved if given more time.| +|❌|Immediately announce that you are done coding.| +|❌|Argue with the interviewer.| ### 6. Wrap Up || Things | |-|-| -|**Do's**|Ask questions. More importantly, ask good and engaging questions that are tailored to the company! Pick some questions from [this list](../non-technical/questions-to-ask.md).| -||Thank the interviewer.| -|**Don'ts**|End the interview without asking any questions.| -||Ask about your interview performance. It can get awkward.| +|✅|Ask questions. More importantly, ask good and engaging questions that are tailored to the company! Pick some questions from [this list](../non-technical/questions-to-ask.md).| +|✅|Thank the interviewer.| +|❌|End the interview without asking any questions.| +|❌|Ask about your interview performance. It can get awkward.|