Threat modeling for juniors — do you test assumptions before they break?
Threat modeling sounds like something only senior auditors do, but every junior should start there. Even a simple question like “Who controls msg.sender?” can change how you code.
I used to chase syntax bugs and miss logic ones. Now I ask: “What state must never change?”
It’s making me see contracts differently. Curious how others started training this muscle early on.