# An Interview Coding Checklist — DSA Interview Patterns

Source: https://www.skillbyai.com/en/dsa-interview-patterns/d-check

> Finish strong.

## Test, analyse, discuss

After coding, **trace** your solution on the example, then test edge cases: empty input, one element, duplicates, negatives, very large values. State time and space complexity and explain any trade-offs. If time remains, discuss improvements or follow-ups (streaming input, memory limits). Practise patterns with spaced repetition rather than solving random problems.

## The checklist

Use it for every practice problem.

```text
[ ] restated problem; clarified inputs, constraints, edge cases
[ ] worked an example by hand
[ ] stated brute force + complexity
[ ] identified the pattern (hash map, window, BFS, DP ...)
[ ] explained the optimised idea before coding
[ ] clean code: clear names, helper functions, no magic numbers
[ ] traced the example through the code
[ ] tested edge cases: empty, single, duplicates, negatives, large
[ ] stated time and space complexity
[ ] mentioned follow-ups or alternatives
```

## Keep a mistake log

Writing down why you missed a problem (wrong pattern, off-by-one, missed edge case) turns practice into improvement.

**Quiz:** What should you do right after finishing the code?

- [x] Trace it on an example and test edge cases
- [ ] Immediately say it is done
- [ ] Rewrite it in another language
- [ ] Delete the brute force notes and stop talking

*Answer:* Trace it on an example and test edge cases. Testing is part of the score.
