> I'd like to point out that this depends heavily on your institution. My CS program had a class literally called "Formal methods", and every student was required to learn formal proofs before their first programming-heavy class (namely, "Data Structures I").
But compare usage of formal methods and practices in software engineers in a startup (or even well-established company) with engineers designing a bridge, for example.