You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.5 KiB
3.5 KiB
id | title |
---|---|
coding-signals | Coding Signals |
The point of interviews is for interviewers to extract signals from certain candidate behaviors. In coding interviews, the signals can be broadly classified into the following categories: Problem Solving, Technical Competency, Testing, and Communication.
When interviewers take down interview feedback, these are likely what is on their feedback sheet.
Refer to the Facebook's Onsite Interview Guide for more information.
Communication
Clarify problem
- 👍 Appropriately asked good, clarifying questions about the problem
- 👎 Failed to confirm understanding/ask appropriate questions
Communicating approach
- 👍 Able to explain overall approach, technical terms, and acronyms (where applicable)
- 👎 Failed to effectively explain overall approach, technical terms, and acronyms (where applicable)
Explains while coding
- 👍 Explains what the code is doing while coding, especially for parts that aren't obvious
- 👎 Keeps silent during coding, or just reading out the code without much explanation
Problem solving
Understanding the problem
- 👍 Understood the key aspects of the problem quickly
- 👎 Had difficulty in understanding the key aspects of the problem
Solution/approach
- 👍 Approached the problem in a systematic and logical manner
- 👎 Did not demonstrate a logical thought process for approaching the problem
Trade-offs analysis
- 👍 Came up with multiple solutions and explained the trade-offs of each clearly and correctly
- 👎 Failed to describe trade-offs of different solutions
Improving the solution
- 👍 Suggested a more efficient solution when prompted, or proactively coming up with a better solution
- 👎 Had difficulty in coming up with a more efficient solution even after being prompted
Complexity analysis
- 👍 Able to determine the algorithmic time and space complexity
- 👎 Was not able to determine the algorithmic time and space complexity (explain why TC came up with such an answer)
Hinting
- 👍 Did not require any major hints
- 👎 Needed plenty of hints
Technical competency
Speed
- 👍 Quickly implemented a working solution
- 👎 Was not able to complete the solution
Correctness/Accuracy
- 👍 Implemented the solution correctly (e.g., working solution, minimal bugs)
- 👎 Unable to correctly implement a solution (e.g., non-working solution, incorrect logic, and/or serious bugs)
Mastery of chosen programming language
- 👍 Demonstrated mastery of the chosen programming language
- 👎 Does not seem to be familiar with the chosen programming language
Implementation
- 👍 Implementation was clean and straightforward
- 👎 Implementation was unnecessarily complex and/or messy
Coding style
- 👍 Coding style was neat (proper indentation, spacing, and no bad practices)
- 👎 Coding style was messy (inconsistent indentation, weird spacings, etc.)
Testing
Common cases
- 👍 Tested their code against various typical cases
- 👎 Failed to test the code against typical cases
Corner cases
- 👍 Found and handled corner/edge cases
- 👎 Failed to consider corner/edge cases
Self-correction
- 👍 Identified and corrected bugs in the code (where applicable)
- 👎 Not able to discover and fix bugs even after being hinted/prompted