Skip to content
Sharp

Domain Modeling · interview question

What does a strong engineer do when reasoning through invariants in __post_init__ code?

Multiple choiceMediumchapter-7-curatedpremiumdomain-modelinginvariants-in-post-init
python
from dataclasses import dataclass

@dataclass
class OrderLine:
    sku: str
    quantity: int

    def __post_init__(self) -> None:
        if self.quantity <= 0:
            raise ValueError("quantity must be positive")
Choose one answer
Answer and explanation

Correct answer

C. Narrate the data shape, the state changes, and the exact rule order step by step.

Why

Interviewers often use simple code to test whether you can reason through execution without bluffing.

Test yourself on Domain Modeling

A free test with instant, explained results. No account needed.

Start free test
All Domain Modeling questions →