system-design-practice
Practise system design the way the interview really runs. Each problem gives you a whiteboard for the high-level architecture, a UML board and a code tab for low-level design, a structured design doc, a back-of-the-envelope estimator, and a 45-minute phased mock interview timer. When you're done, compare with the reference design.