Skip to content
Preptima
mediumCodingDesignEntryMidSenior

You are given a paragraph of requirements, not a problem statement. What do you write first, and what do you deliberately not build?

Write the paragraph back as a numbered list of testable rules, mark each as build, stub or out, and turn the rule with the most interacting parts into the first test. Leave out the nouns that are only context, the features introduced with 'eventually', and every side channel the rules do not depend on.

5 min readUpdated 2026-10-09

Answer

Short answer

Write the rules first, not the classes. Requirements analysis in a machine coding round means rewriting the paragraph as a numbered list of testable rules, marking each one build, stub or out, and writing a test for the rule with the most moving parts before any production code. What you deliberately do not build is everything in the paragraph that describes the business rather than the behaviour: context nouns, "eventually" features and side channels such as notifications.

Was this answer helpful?

Likely follow-ups

  • The paragraph says "more than twelve hours". What does your code do at exactly twelve hours, and who decides?
  • Halfway through, the interviewer adds that premium members jump the waitlist. Which of your classes changes, and which test fails first?
  • How would you show the excluded reminder texts in the design without building them?
  • Your rule list has nine entries and you have time for five. How do you choose?

Related questions