Week 19 — Practical Engineering: Design & Parsing

Month 04 · Week 19 · Theme: Production-style design problems

This week shifts from algorithmic puzzles to engineering judgment: parsing, OOP design, and APIs that real interviewers use as the “second-round system question that’s still coding”.

Why This Week Matters

The bar for Senior+ engineers is no longer “can you solve LC Hard”. It’s “can you design a class hierarchy under time pressure that handles edge cases, scales, and has clean APIs”. This week trains that muscle on five canonical design problems.

Daily Schedule

DayProblemPattern
Monp96 — Basic Calculator IILC 227 · stack-based parsing
Tuep97 — Text JustificationLC 68 · greedy line packing + simulation
Wedp98 — Design Circular QueueLC 622 · fixed-size ring buffer
Thup99 — Design Log Storage SystemLC 635 · range query on timestamps
Frip100 — Design In-Memory File SystemLC 588 · OOP + trie + path parsing

Readiness Gate

By Friday you should be able to:

  • Write a recursive-descent or stack-based expression parser cold.
  • Implement Text Justification with all spacing rules right the first time.
  • Implement a circular buffer with front/rear/size invariants.
  • Design a hierarchical filesystem with ls/mkdir/addContentToFile/readContentFromFile in 30 min.
  • Explain time/space tradeoffs for each design and a follow-up that breaks it (concurrency, persistence, scale).

Connection to Interview Loop

These problems appear in the “design but still coding” round at FAANG — typically 45 min, expects working code AND class-design discussion. Bombing the design discussion at Senior+ is the #1 reason candidates get downleveled.