interviewInterview Checklist

Before You Start Coding

Do not rush into discussing the approach, instead focus on understanding the problem.

Understand the Problem Thoroughly

Clarify the Problem
Restate the problem in your own words.
Ask clarifying questions to resolve any uncertainties.
Confirm Inputs and Outputs
Determine expected input types and formats.
Verify the required output.
Identify Constraints and Edge Cases
Discuss input constraints and determine target time and space complexities.
Consider possible edge cases and how to handle them.

Once you thoroughly understand the problem requirements, do not rush into coding. Instead, start planning your solution.

Plan Your Solution

Think Out Loud
Share your thought process with the interviewer
Outline Your Approach
Propose a high-level solution.
Explain why you chose this approach.
Select Appropriate Data Structures and Algorithms
Choose data structures that fit the problem.
Ensure your algorithm meets the constraints.

While Coding

Time is limited, but with just a little bit of effort, you can still write beautiful code and impress your interviewer.

Write Clean and Correct Code

Use Clear Naming
Use descriptive variable and function names
Follow Coding Standards
Write readable and well-formatted code.
Code Incrementally
Implement your solution step by step.
Handle Edge Cases
Include checks for edge cases in your code.

After Coding

Do not just say “I’m done”. This is the moment where you show your professionalism.

Test Your Code

Run Through Test Cases
Test your code with sample inputs, including edge cases.
Verify that it produces the correct outputs.

Analyze Time and Space Complexity

Discuss Complexity
State the time complexity of your solution.
State the space complexity.
Confirm that it meets the problem’s constraints.

Communicate and Reflect

Explain Your Code
Walk through your code with the interviewer.
Clarify any parts that may be confusing.
Be Open to Feedback
Listen to the interviewer’s suggestions.
Be willing to discuss alternative approaches.