MEDIUMasked at 1 company

Design a Todo List

A medium-tier problem at 58% community acceptance, tagged with Array, Hash Table, String. Reported in interviews at Notion and 0 others.

Founder's read

Design problems feel like curveballs. You're used to grinding algorithms, but suddenly you're building a system and the interviewer starts asking questions you didn't anticipate. This one from Notion puts you in charge of a todo list backend. Half the candidates who see it don't submit a passing solution, which means the problem is either ambiguous or punishes incomplete thinking. The trick isn't the data structures, arrays and hash tables are straightforward, it's knowing what methods to implement, how to handle edge cases like task deletion or searching, and whether your design actually scales when they throw new requirements at you mid-interview. If you freeze on the requirements phase, StealthCoder surfaces a working structure in seconds.

Companies asking
1
Difficulty
MEDIUM
Acceptance
58%

Companies that ask "Design a Todo List"

If this hits your live OA

Design a Todo List is the kind of problem that decides whether you pass. StealthCoder reads the problem on screen and surfaces a working solution in under 2 seconds. Invisible to screen share. The proctor sees nothing. Built by an engineer who got tired of watching his cohort grind for six months and still get filtered at the OA stage.

Get StealthCoder
What this means

Most candidates default to a simple array of objects and miss what makes this a real design problem. You need to support operations like add, delete, search, and sort, which means you can't just push and pop. A hash table for O(1) task lookup by ID paired with an array for ordering is the pattern. The gotcha: when you delete a task, you can't just remove it from the array without breaking indices, so you either use a separate 'deleted' flag or manage your ID-to-index mapping carefully. Sorting becomes expensive if you sort the raw array each time, so many solutions cache or use smart data structures. The real test is whether you ask clarifying questions about priorities, due dates, and filtering before you code. If this problem hits your live assessment and you blank on the method signatures or how to structure the object model, StealthCoder runs invisibly and gives you a clean, tested implementation.

Pattern tags

The honest play

You know the problem. Make sure you actually pass it.

Design a Todo List recycles across companies for a reason. It's medium-tier, and most candidates blank under the timer. StealthCoder is the hedge: an AI overlay invisible during screen share. It reads the problem and surfaces a working solution in under 2 seconds. Built by an engineer who got tired of watching his cohort grind for six months and still get filtered at the OA stage. Works on HackerRank, CodeSignal, CoderPad, and Karat.

Design a Todo List interview FAQ

Is this just LeetCode or a real system design interview?+

It's somewhere between. You're not designing a distributed system, but you do need to think about data structure tradeoffs and API clarity. Notion's interviewers care that your interface is intuitive and your methods handle real use cases. It's still fundamentally a coding problem, not a whiteboarding session.

What methods do I actually need to implement?+

There's no single 'right' answer, which is why it's tricky. You'll need add, delete, and retrieve at minimum. Search, sort by priority or date, and mark-as-complete are common extensions. Ask the interviewer what the MVP is before you start coding.

How do I handle deletion without breaking my array indices?+

Either use a hash table primary key (UUID or auto-increment ID) and mark tasks deleted without removing them from the array, or rebuild your index after each deletion. The first is O(1) deletion; the second is cleaner but slower. Most solutions use the first approach.

Does the acceptance rate being 58% mean it's actually hard?+

Yes. Design problems have lower acceptance rates because many candidates don't ask questions before coding, build incomplete solutions, or miss edge cases. Most who fail understand the data structures but didn't think through the complete API.

If Notion is the only company listed, is this problem still worth drilling?+

The pattern (hash table plus array, API design, deletion without breaking indices) appears across many system design rounds. Even if you don't interview at Notion, this problem teaches you how to think about tradeoffs, which transfers directly to bigger design problems.

Want the actual problem statement? View "Design a Todo List" on LeetCode →

Frequency and company-tag data sourced from public community-maintained interview-report repos. Problem, description, and trademark © LeetCode. StealthCoder is not affiliated with LeetCode.