Ask three questions before you name a pattern
transcript
The prompt says: design a coupon engine. Your first words matter. Don't say Strategy. Ask a question instead.
What varies? Marketing adds a new kind of coupon every month. Nobody wants to edit one function twelve times a year. A rule that keeps changing is a strategy: one interface, a class per kind.
Who listens? Finance wants usage counts, and support wants an audit trail. Neither one should be called from the pricing code. Several parties react to one event: that's an observer.
What's undoable? Here, nobody asked to take a coupon back. So no command. Say what would bring it in, and move on.
Ask the shape questions first. What varies, and what stacks on top. Then the time questions: lifecycle, listeners, and undo. A quick no is a fine answer.
The interviewer gives the answers. You pick the pattern. Ask first, and say each question out loud.
Full breakdown in the lecture.