Well, the reason a lot of companies would fire you for smoking weed is because some people might be tempted to use it while they're at work or before coming in to work. A lot of the jobs I do are pretty hazardous.
The U.S. military, for example, use to allow recreational drug use. At least, they didn't restrict it. Then some fighter pilots crashed their jets. Autopsies showed they had drugs in their system when they were flying those fighter jets. After that, the military had zero tolerance use. So, even if you live in a state where weed is legal, if you're in the military there, your out of luck because they'll kick you out if it's in your system.
RE: The Day Police Caught Someone With Weed Right in Front of Me.