As a Software Engineer, have you ever found yourself stuck with questions in the middle of development? Like, you've got the design, started coding, had a good focus for about 30 minutes, and then it hits you: the design overlooks some critical edge cases. Or, maybe you thought