It seems you're talking about the IO monad specifically, not about monads in general. Other monads, like Maybe and List, absolutely occur in programs written by "most developers in other languages", whether they perceive them as monads or not.
For instance, a pointer type in C is like a "Maybe a" in Haskell, because a pointer can always be null (Nothing).